如果“emp”是MySQL数据库中表格的一列,请告诉我以下查询之间的区别:
emp <> ''
和emp not null
我很困惑,请帮助我。
答案 0 :(得分:2)
与''
的比较检查字符串是否等于空字符串,并且始终可以执行。
IS NOT NULL
测试仅在数据库列可为空时才有意义。你可以故意让它成为可空的,特别是为了能够区分“我知道这个值,它恰好是一个空白”和“这个值在这里不适用,或者我不知道”。
您可能还想查看MySql文档对NULL
values的说法。
答案 1 :(得分:1)
emp <> ''
与无效的列匹配。对于null测试,您必须使用emp is not null
,因为null与任何内容都不匹配。
答案 2 :(得分:0)
emp <> ''
测试值是否与空字符串不同,而emp is not null
测试的值是否为null。与null比较时,您应始终使用is null
或is not null