Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / не могу понять is distinct from(+) / 2 сообщений из 2, страница 1 из 1
22.08.2008, 16:51
    #35502249
tadmin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не могу понять is distinct from(+)
в чужом коде столкнулся с "is distinct from"
Код: plaintext
1.
2.
3.
4.
  select *
    from table as t
    where t.sp_ID = in_SP_ID
      and not t.PA_ID is distinct from in_PA_ID
      and not t.C_ID   is distinct from in_C_ID;

Поясните, это то же самое, что

Код: plaintext
1.
2.
3.
4.
  select *
    from table as t
    where t.sp_ID = in_SP_ID
      and ( t.PA_ID is null OR t.PA_ID = in_PA_ID)
      and ( t.C_ID  is null  OR t.C_ID = in_C_ID;

in_SP_ID, in_PA_ID, in_C_ID - входные параметры функции.
...
Рейтинг: 0 / 0
22.08.2008, 17:51
    #35502391
Ёш
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не могу понять is distinct from(+)
нет. is distinct from это по русски "отличается" причём результат сравнения никогда не равен null так как null'ы сравниваются как обычные значения (null is distinct from null = false, null is distinct from 1 = true)

соответственно, второй запрос - это не тоже самое что первый, если функция не strict


--
„Истина — это вовсе не то, что можно убедительно доказать, это то, что
делает всё проще и понятнее“ — Антуан де Сент-Экзюпери
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / не могу понять is distinct from(+) / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]