Size: a a a

SqlCom.ru - Стиль жизни SQL

2020 July 21

IZ

Ilia Zviagin in SqlCom.ru - Стиль жизни SQL
Alex
Так а в чем проблема? Выдает ровно то, что удовлетворяет вашим условиям в where
= null - НЕТ
is null - ДА!
источник

A

Alex in SqlCom.ru - Стиль жизни SQL
Yury Bor
Было бы странно, если бы оно выдавало что-то другое))
Проблема в том, что я не знаю как решить задачу.
Мне необходимо добиться ситуации, когда при передаче в запросе значения поля null оно игнорировалось, т.е. подставлялось любое значение из данного поля.
Тогда не пишите это условие
источник

YS

Yaroslav Schekin in SqlCom.ru - Стиль жизни SQL
Yury Bor
Было бы странно, если бы оно выдавало что-то другое))
Проблема в том, что я не знаю как решить задачу.
Мне необходимо добиться ситуации, когда при передаче в запросе значения поля null оно игнорировалось, т.е. подставлялось любое значение из данного поля.
источник

YB

Yury Bor in SqlCom.ru - Стиль жизни SQL
Alex
Тогда не пишите это условие
хорошо, не буду
источник

IC

Igor Chizhov in SqlCom.ru - Стиль жизни SQL
Ilia Zviagin
= null - НЕТ
is null - ДА!
= null - только при явной вставке значения null в таблицу. Все сравнения с null через 'is null'
источник

YB

Yury Bor in SqlCom.ru - Стиль жизни SQL
спасибо, попробую вникнуть
источник

IZ

Ilia Zviagin in SqlCom.ru - Стиль жизни SQL
Alex
Тогда не пишите это условие
А, сорри, не тому ответил...
источник

YB

Yury Bor in SqlCom.ru - Стиль жизни SQL
Igor Chizhov
= null - только при явной вставке значения null в таблицу. Все сравнения с null через 'is null'
да, я не сравниваю с null. null вообще нет в таблице.
мне надо заменить входящее значение null в формируемом запросе на любое значение из данного поля, как в случае, если бы я не передавал его вообще
источник

A

Alex in SqlCom.ru - Стиль жизни SQL
Yury Bor
да, я не сравниваю с null. null вообще нет в таблице.
мне надо заменить входящее значение null в формируемом запросе на любое значение из данного поля, как в случае, если бы я не передавал его вообще
Зачем это делать? Почему просто не написать
SELECT * 
FROM docs
WHERE p1=2
and p5=9;
источник

YB

Yury Bor in SqlCom.ru - Стиль жизни SQL
Alex
Зачем это делать? Почему просто не написать
SELECT * 
FROM docs
WHERE p1=2
and p5=9;
я не знаю. такая задача. сейчас пришлю
источник

IC

Igor Chizhov in SqlCom.ru - Стиль жизни SQL
У него динамический запрос похоже
источник

A

Alex in SqlCom.ru - Стиль жизни SQL
Ну так динамический можно как угодно собрать.
а вот это
where coalesce(....) = - скан таблички обеспечен.
источник

YB

Yury Bor in SqlCom.ru - Стиль жизни SQL
источник

IC

Igor Chizhov in SqlCom.ru - Стиль жизни SQL
Тут ещё и MySQL
источник

IC

Igor Chizhov in SqlCom.ru - Стиль жизни SQL
У нас про MS SQL чат
источник

YB

Yury Bor in SqlCom.ru - Стиль жизни SQL
А если одно из значений null то нет таких строк, а должно быть как минимум тоже самое. Как этого добиться не могу понять.
источник

YB

Yury Bor in SqlCom.ru - Стиль жизни SQL
Igor Chizhov
У нас про MS SQL чат
оу сори... в названии не видно, а описание не смотрел
источник

YB

Yury Bor in SqlCom.ru - Стиль жизни SQL
а если я обрежу название, будет разница?) мне кажется такие вещи одинаково решаются в разных СУБД или нет?)
источник

АА

Андрей Агеев... in SqlCom.ru - Стиль жизни SQL
Yury Bor
А если одно из значений null то нет таких строк, а должно быть как минимум тоже самое. Как этого добиться не могу понять.
where p1=coalesce(%p1,p1)
источник

АА

Андрей Агеев... in SqlCom.ru - Стиль жизни SQL
если я правильно понял...
источник