Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
如果我有一个带有字符串列的表,并尝试从该列中选择匹配0,则返回所有行。为什么 MySQL 会返回所有行,而不是只返回 0 作为字符串的行?
0
SELECT * FROM MyTable WHERE MyStringColumn = 0;
看看这个SQLFiddle。我希望看到没有返回任何行,但都是。为什么会这样?
比较指令
WHERE info = 0
转换info为整数。除非它以一些数字字符串开头,否则它的整数值为零。因此,除了 '123abc' 之类的内容之外,您的所有字符串都将匹配。
info
只需使用 WHERE MyStringColumn = '0'