MySQL选择0匹配所有字符串

时间:2013-06-30 17:34:06

标签: mysql

如果我有一个包含字符串列的表,并尝试从匹配0的列中进行选择,则返回所有行。为什么MySQL会返回所有行,而不仅仅是返回0作为字符串的行?

SELECT * FROM MyTable WHERE MyStringColumn = 0;

看看这个SQLFiddle。我希望看到没有返回任何行,但都是。为什么会这样?

2 个答案:

答案 0 :(得分:3)

比较命令

WHERE info = 0

info转换为整数。除非它以一些数字字符串开头,否则其整数值为零。所以除了'123abc'之外的所有字符串都匹配。

答案 1 :(得分:0)

只需使用     WHERE MyStringColumn ='0'