【发布时间】:2016-06-07 04:46:05
【问题描述】:
在此表中,如果我进行以下查询
select * from table where order_id != 1
我想,我应该得到第 18 和 19 行。但是,查询不能不获取任何行。
我可以这样重写查询
select * from table where (order_id != 1 or order_id is null)
它会获取预期的数据,但不应该是第一个查询能够获取行号18 & 19?
【问题讨论】:
-
表格中
order_id的数据类型是什么? -
tinyint(4) Null(Yes) Default(NULL)
-
select * from table where order_id <> 1也不起作用,没有选择行 -
select * from table where order_id <> 1 or order_id is NULL,您的查询将不考虑NULL行好友! :)