как проверить, имеет ли поле значение в Oracle - PullRequest
1 голос
/ 19 мая 2010

Как проверить, установлено ли значение для определенного поля в таблице?

Спасибо

Ответы [ 4 ]

3 голосов
/ 19 мая 2010

.... ГДЕ поле НЕ ПУСТО ....

1 голос
/ 19 мая 2010

Мы можем запустить проверку запроса на NOT NULL в предложении WHERE. Я использую количество для удобства.

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

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

SQL>

Итак, в четырех строках значение COMM установлено.

Если мы хотим проверить наличие значения в проекции, то мы можем использовать CASE(), DECODE() или одну из функций Oracle NULL . Например, этот оператор переносит вызов [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>
0 голосов
/ 19 мая 2010

Таким образом:

SELECT whatever FROM table WHERE that_field IS NULL

Или замените IS NULL на IS NOT NULL, если вы хотите выбрать строки, в которых поле имеет значение.

0 голосов
/ 19 мая 2010

Вы можете использовать этот запрос,

выберите * из таблицы_имя, где column_name = 'значение поля';

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...