MySQL编码问题
问题描述:
我将如何检查数字为零0
在MySQL中,例如用户等于零0
?MySQL编码问题
哪一个如果有的话是正确的?
AND user = 0
AND user = '0'
AND user = '" . 0 . "'
答
这一切都取决于列的格式。如果以int存储,则使用user=0
将是正确的。
如果该列存储为char,则user='0'
将是正确的。
最基本的区别是,一个字符可以容纳字母/数字等。而一个int将只保存数字 - 而且一个int 0和一个char'0'是不一样的。
答
user = 0
是要走的路,如果你有一个基于整数的列。其他版本也起作用。但是,其他人可能需要从字符串转换为整数,这是额外的开销。
第一种选择将是方式。 – mhitza 2010-10-11 05:39:51
@mhitza其他例子有什么问题? – HELP 2010-10-11 05:40:44
相关:[SQL中是否总是等于'1'?](http://stackoverflow.com/questions/2134102/does-1-always-equal-1-in-sql) – 2010-10-11 05:41:02