Функция NVL в oracle может быть отфильтрована с другим условием? - PullRequest
0 голосов
/ 14 апреля 2020

Я создал SQL scipt, я использовал функцию NVL с условием «не ноль». Может ли он проверять, строка за строкой, какая строка не равна нулю, а какая равна нулю?

select * from table where nvl(Column A,column B) is not null

Поскольку, возможно, столбец A является нулевым, а столбец - не нулевым.

1 Ответ

0 голосов
/ 14 апреля 2020

Чтобы выбрать A или B

select 
    case when A is not null then A else B end as AorB,
    ...
from table

Обратите внимание, что AorB возвращает ноль, если и A, и B равны нулю. Если вы хотите отфильтровать такие записи:

select ...
from
(
    select 
        case when A is not null then A else B end as AorB,
        ...
    from table
)
where AorB is not null;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...