MySQL 用 NOT IN 不生效(无数据返回)

| 选择喜欢的代码风格  

MYSQL NOT IN 不生效原因:


如果 SQL 子查询中包含 null 值的话,那么,MYSQL 会翻译为 not in null。除了 null 以外的所有数据,都满足这一点。所以,就会出现 not in 会 “失效”,那么正确的写法是:

SELECT * FROM A WHERE `name_a` NOT IN (

    SELECT `name_b` FROM B WHERE name_b IS NOT NULL

)

MYSQL NOT IN 扩展阅读:




发表评论