Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как строится синтаксис проверки поля на NULL или значение / 6 сообщений из 6, страница 1 из 1
09.04.2015, 13:40
    #38931866
Generalproger
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как строится синтаксис проверки поля на NULL или значение
Есть поле param с типом text[], нужно выбрать поля где второй элемент этого массива является NULL или определенным текстом
WHERE param[2]=(NULL||'23')
почему то не проходит, поскольку выборка с несколькими проверками то вбивать
param[2] IS NULL OR param[2] = '23' не хочется т.к. в проверке должны быть все AND и париться с повторением всей проверочной части еще раз не хочется
...
Рейтинг: 0 / 0
09.04.2015, 13:53
    #38931892
fte
fte
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как строится синтаксис проверки поля на NULL или значение
Можно так:
Код: sql
1.
where nullif(param[2],23) is null
...
Рейтинг: 0 / 0
09.04.2015, 14:05
    #38931904
Generalproger
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как строится синтаксис проверки поля на NULL или значение
fte,
Спасибо огромное, то что надо, кстати может вы еще знаете как организовать запрос

ГДЕ ПОЛЕ = 0 (ЕСЛИ ПОЛЕ != 0 ТО ПОЛЕ < ЗНАЧЕНИЕ )
...
Рейтинг: 0 / 0
09.04.2015, 14:54
    #38931971
fte
fte
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как строится синтаксис проверки поля на NULL или значение
Можно и так:
Код: sql
1.
2.
3.
4.
5.
select * 
from (
    select * from generate_series(0,21) f
) r
where coalesce(nullif(f,0)<15,true) 
...
Рейтинг: 0 / 0
09.04.2015, 15:29
    #38932041
p2.
p2.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как строится синтаксис проверки поля на NULL или значение
Generalprogerfte,
Спасибо огромное, то что надо, кстати может вы еще знаете как организовать запрос

ГДЕ ПОЛЕ = 0 (ЕСЛИ ПОЛЕ != 0 ТО ПОЛЕ < ЗНАЧЕНИЕ )
ПОЛЕ < greatest(ЗНАЧЕНИЕ, 0+)

А ЗНАЧЕНИЕ, случаем, всегда положительное? И типы integer?
...
Рейтинг: 0 / 0
09.04.2015, 15:41
    #38932064
qwwq
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как строится синтаксис проверки поля на NULL или значение
не учите деточку антипаттернам.
// простите не удержался.

правильно с т.з. оптимизатора -- именно перечислить вот это вот всё в OR * [и охватить (), чтобы не собирать алтернативный OR снаружи]

даже такоё сахарок как IS DISTINCT FROM не охвачен отражением на индексное сравнение.

-- а почему -- просто подумайте над количеством операций, когда оно над константой (параметром), и когда -- над полем таблицы (всё вот это вот: "поместить, сравнить, присвоить").
не говоря об индексах

если что-то вам мешает написать правильный WHERE со скобками -- выбросьте это что-то в унитаз.

//* исключением является случай , когда вы озаботились функциональным индексом по именно этому выражению.
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как строится синтаксис проверки поля на NULL или значение / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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