Любой способ получить пустые (пустые) столбцы, используя условие IN в Oracle? без использования является нулевым? - PullRequest
0 голосов
/ 01 марта 2012

У меня есть таблица (сотрудник), как показано ниже:

  EMPNO    ENAME      JOB          MGR HIREDATE        SAL       COMM     DEPTNO
  -------- ---------- --------- ------ ---------- -------- ---------- ----------
      7369 SMITH                  7902 17/12/1980      800                    20
      7499 ALLEN      SALESMAN    7698 20/02/1981     1600        300         30
      7521 WARD                   7698 22/02/1981     1250        500         30
      7566 JONES      MANAGER     7839 02/04/1981     2975                    20
      7654 MARTIN     SALESMAN    7698 28/09/1981     1250       1400         30
      7698 BLAKE                  7839 01/05/1981     2850                    30
      7782 CLARK      TESTER      7839 09/06/1981     2450                    10

Вот что мне нужно получить:
сотрудник номер , имя и должность, где работа IN (' SALESMAN ',' MANAGER 'и NULL (пусто)).
Я подготовил запрос, используя is NULL

select empno, ename, job 
from employee 
where job in('SALESMAN', 'MANAGER') or job is null;

Есть ли какой-либо способ, кроме указанного выше запроса?
Могу ли я передать ноль в сторону в состоянии?

1 Ответ

3 голосов
/ 01 марта 2012

используйте функцию nvl:

select empno, ename, job 
from employee 
where nvl(job, 'NULL') in('SALESMAN', 'MANAGER', 'NULL')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...