SQL-确保查询不包含某个列为null的结果?

时间:2016-01-18 11:57:49

标签: sql oracle null timestamp

以下是我正在使用的查询,以便检查表格中有多少行的日期早于 01/01/2015 (TIMESTAMP).

如何更改此查询以确保包含DATE_INSERTED列为null的任何结果?

此外,如果这不是检查这种情况的最高效方式,我将不胜感激。

当前查询:

SELECT COUNT(*)
FROM TABLE_NAME
WHERE DATE_INSERTED NOT BETWEEN '01-JAN-2015 00.00.00.00' AND '18-JAN-2016 00.00.00.00';

1 个答案:

答案 0 :(得分:0)

您想使用is not null 这是您的查询更新:

SELECT COUNT(*)
FROM TABLE_NAME
WHERE DATE_INSERTED
    NOT BETWEEN '01-JAN-2015 00.00.00.00' AND '18-JAN-2016 00.00.00.00'
    AND DATE_INSERTED is not null;

新行间距是可选的。虽然它可能看起来有误导性:在param1和param2之间并且column不为null ...你设置的第一个条件(之间)只接受两个参数,所以下一个AND被视为默认值。而第一个是第一个和第二个BETWEEN参数之间的分离。