如何检查字段在Oracle中是否有值

时间:2010-05-19 10:36:50

标签: oracle

如何检查表中是否为特定字段设置了值?

谢谢

4 个答案:

答案 0 :(得分:3)

.... WHERE字段IS NOT NULL ....

答案 1 :(得分:1)

我们可以在WHERE子句中运行查询NOT NULL。为方便起见,我正在使用计数。

SQL> select count(*)
  2  from emp
  3  where comm is not null
  4  /

  COUNT(*)
----------
         4

SQL>

这是COMM有值集的四行。

如果我们想测试投影中是否存在值,那么我们可以使用CASE()DECODE()或Oracle NULL-related functions之一。例如,此语句在[NVL2()][2]中包含对SUM()的调用,以计算同一查询中COMM的实例数为NULL和NOT NULL。

SQL> select sum(nvl2(comm, 1, 0)) as notnull_cnt
  2         , sum(nvl2(comm, 0, 1)) as null_cnt
  3  from emp
  4  /

NOTNULL_CNT   NULL_CNT
----------- ----------
          4         16

SQL>

答案 2 :(得分:0)

您可以使用此查询

从table_name中选择*,其中column_name ='field value';

答案 3 :(得分:0)

这样:

SELECT whatever FROM table WHERE that_field IS NULL

如果您想选择字段中包含值的行,请将IS NULL替换为IS NOT NULL