请帮帮我!我的代码不工作:(我的错误在哪里?
SELECT * from dummy_table where `a` + `b` + `c` like '99';
我有空的回报,虽然有一些行的总和(a,b,c)给出99。a是整数,而b,c是双精度的。这会导致一个问题吗?
jk9hmnmh1#
你应该在where子句中做一个数学比较
SELECT * FROM dummy_Table WHERE a + b + c = 99
如果您担心double可能包含一个很小的精度,在比较时您希望忽略它,那么请使用double将列四舍五入到您首选的精度,例如2位小数。
SELECT * FROM dummy_Table WHERE a + ROUND(b,2) + ROUND(c,2) = 99
sbtkgmzw2#
看起来你想把a,b,c和成字母而不是列。尝试删除单引号。“99”是完全匹配的吗?如果对您的情况有意义,您也可以尝试使用“%99%”。
2条答案
按热度按时间jk9hmnmh1#
你应该在where子句中做一个数学比较
如果您担心double可能包含一个很小的精度,在比较时您希望忽略它,那么请使用double将列四舍五入到您首选的精度,例如2位小数。
sbtkgmzw2#
看起来你想把a,b,c和成字母而不是列。尝试删除单引号。
“99”是完全匹配的吗?如果对您的情况有意义,您也可以尝试使用“%99%”。