我使用以下代码,但即使使用IS NOT NULL
,也会显示空结果。
SELECT COLUMN1
,COLUMN2
,COLUMN3
FROM TABLE.DBF
WHERE COLUMN1 IS NOT NULL
ORDER BY COLUMN1 ASC
示例结果:
50 0
51 0
50 0
51 0
50 0
51 0
1 50 35000
1 51 29334.71
10 50 10000
10 51 1568.14
100 50 25000
100 51 -2731.98
如果我将其切换为> 0
,则不会显示空结果。理想情况下IS NOT NULL
会更好用,因为它更有意义。我怎样才能使它工作?该行的该列中有无。
使用> 0
代替IS NOT NULL
的结果示例:
1 50 35000
1 51 29334.71
10 50 10000
10 51 1568.14
100 50 25000
100 51 -2731.98
答案 0 :(得分:2)
如果这是T-SQL(MS SQL服务器),您可以使用nullif()
,如下例所示。如果值为空字符串,则此示例中的nullif()
将返回NULL
。
SELECT COLUMN1, COLUMN2, COLUMN3
FROM TABLE.DBF
WHERE NULLIF(COLUMN1,'') IS NOT NULL
ORDER BY COLUMN1 ASC
答案 1 :(得分:0)
您可以使用
WHERE COLUMN1 IS NOT NULL and COLUMN1 <>''
并查看是否会改变您的结果。