Mysql不选择空值

标签 mysql sql select null return

<分区>

我有以下查询:

SELECT * FROM table 
WHERE orderdate >= "2015-12-01" 
    AND orderdate <= "2015-12-31" 
    AND values > 0 
    AND orders <> 'Returned'

问题是查询没有返回 orders 列为 NULL 的行,我不明白为什么。

最佳答案

这是sql语言。 Mysql 不将 NULL 视为值。因此,如果您想包含 NULL,我们必须指定它。

SELECT * FROM table 
WHERE orderdate >= "2015-12-01" 
    AND orderdate <= "2015-12-31" 
    AND values > 0 
    AND (orders <> 'Returned' or orders is null)

关于Mysql不选择空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34664944/

相关文章:

mysql - 最后一个分号的程序如何解决?

mysql - 从一张表中选择 : single-row subquery returns more than one row

sql - 映射到多个主键的外键列

sql - 选择不同和非不同的列值

mysql - 当您只有日期(没有时间部分)时按顺序求和列

php - jQuery - 在 Mysql 中搜索结果,然后在表格中显示,而且每条记录都有一个点击链接

c# - 数据库模型到面向对象设计?

sql - 使用 select 将行添加到查询结果

mysql - 在 mysql 的查询中不使用 DISTINCT 的查询形成中的逻辑错误

mysql - DataReader 已打开,必须先将其关闭