我在数据库表中创建了一个新列:
alter table TABLE add (COLUMN NUMBER(1));
现在我想选择列值不为零的所有记录,或者是其他一些空的数字(null)
SELECT * FROM TABLE WHERE COLUMN != 0;
默认情况下,所有列都有空/空值,因为最近添加了此列,因此它应返回所有记录但不返回任何记录。
但是,如果将记录的此列的值更改为0
并运行在查询下方,则可以正常工作。
SELECT * FROM TABLE WHERE COLUMN = 0;
请帮助我想选择值不是0
的所有记录。
答案 0 :(得分:5)
对于NULL
值,您必须明确指定IS NULL
或IS NOT NULL
SELECT * FROM TABLE WHERE COLUMN <> 0 OR COLUMN IS NULL;
OR
SELECT * FROM TABLE WHERE NVL(COLUMN,1) <> 0
即使您使用NVL()