我有一张表 ABC
,其中包含 EMPLID
、GRADE
、SALARY
和 DATE
作为其字段。
我正在执行以下 3 条语句:
select count(*) from ABC;
结果:- 458
select count(*) from ABC where GRADE LIKE '%def%';
结果:- 0
select count(*) from ABC where GRADE NOT LIKE '%def%';
结果:- 428
我的观点是:第二次查询的结果加上第三次查询的结果应该等于第一次查询的结果,不是吗?
最佳答案
看起来您有 30 条 GRADE 为 null
的记录。
null
值是未知的,因此不符合任何一个条件。
关于mysql - 为什么在 SQL 匹配中使用 'LIKE' 不算数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16814577/