mysql 查询值为null的数据

比如现在有数据表test:
id, CA, CB, CC
'1', 'fafa', '1', NULL
'2', 'xf', 'xd', '2'

我执行查询语句:

select * from test.test where CC <>1;

得到的结果是:
id, CA, CB, CC
'2', 'xf', 'xd', '2'

我希望两条记录都查询出来,我该怎么写sql语句?
我知道用这个语句可以查出来,但是我不想这么做,想知道有没更好的方案。

select * from test.test where CC <>1 or CC is null;
阅读 5.5k
3 个回答

select * from test a where ifnull(CC,'NULL') <> 1;

多一个ifnull函数,意为:如果CC字段是NULL值,显示为'NULL'字符串。
能实现相同结果的尽量简洁、容易被其他人看懂的方案就是好方案了,你那语句可以了。

应该是可以采用NOT IN

SELECT * FROM test.test WHERE CC NOT IN ('1');

题主尝试一下?

新手上路,请多包涵

你的语句就很好了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题