@EvgMul

Как в запросе правильно прописать условие сравнения?

Здравствуйте.
Мне нужно получить данные по условию. Поле должно равняться указанной переменной.
Проблема в том, что поле может быть null. Даже если присваивать переменной null, запрос не работает.
select house_id
          into   l_house_id
          from   houses_all
        where  houses_all.corp = l_corp


Если houses_all.corp не null, то сравнение будет работать, но если это значение равно null, даже при условии, что l_corp тоже null, запрос ничего не вернет. IS NULL в данном случае для меня не подойдет.
Подскажите пожалуйста, как можно решить эту проблему?
Заранее благодарен всем отозвавшимся.
  • Вопрос задан
  • 461 просмотр
Решения вопроса 2
@gill-sama
select house_id
          into   l_house_id
          from   houses_all
        where  COALESCE(houses_all.corp,'somevalue') = COALESCE(l_corp,'somevalue')

почитать можно тут
Ответ написан
@mletov
Почему не подойдет IS NULL ?
select house_id
          into   l_house_id
          from   houses_all
        where  houses_all.corp = l_corp
       OR (houses_all.corp IS NULL AND l_corp IS NULL)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы