Гость
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Псевдонимы свойств JSONB в WHERE / 6 сообщений из 6, страница 1 из 1
08.02.2019, 19:13
    #39771341
Буерак
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Псевдонимы свойств JSONB в WHERE
Здравствуйте, уважаемые!

Подскажите, пожалуйста, как можно использовать псевдоним колонки в условии WHERE, если колонка представляет собой какое-либо свойства из объекта JSON?

Например:
Код: sql
1.
SELECT column->'long'->'path'->'to'->'property' AS short_name FROM column WHERE short_name IS NOT NULL


Выдаст что-то типа
ERROR: column "short_name" does not exist

Однако, если использовать запрос такого вида:
Код: sql
1.
SELECT column->'long'->'path'->'to'->'property' AS short_name FROM column WHERE column->'long'->'path'->'to'->'property' IS NOT NULL



То ошибки не будет.
Никак не могу понять, в чем подводные камни, особенно, если учитывать то, что псевдоним колонки, а не свойства объекта JSON работает в WHERE без проблем. Поэтому и пришел к вам за помощью =)

Заранее благодарен!

з.ы: версия 10.1
...
Рейтинг: 0 / 0
08.02.2019, 19:30
    #39771355
Melkij
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Псевдонимы свойств JSONB в WHERE
Буеракз.ы: версия 10.1
Смелый человек.

Буеракособенно, если учитывать то, что псевдоним колонки, а не свойства объекта JSON работает в WHERE без проблем
Вы ошибаетесь.

where не знает ничего о select части запроса.
...
Рейтинг: 0 / 0
08.02.2019, 20:01
    #39771374
Буерак
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Псевдонимы свойств JSONB в WHERE
MelkijСмелый человек.
Почему?
...
Рейтинг: 0 / 0
08.02.2019, 20:27
    #39771380
Melkij
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Псевдонимы свойств JSONB в WHERE
Буерак,

потому что использовать практически первых минорный релиз и игнорировать весьма интересные багфиксы - надо обладать определённой смелостью и большим желанием ходить по давно убранным граблям.
...
Рейтинг: 0 / 0
08.02.2019, 20:32
    #39771382
Буерак
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Псевдонимы свойств JSONB в WHERE
Melkij, а что бы вы посоветовали? Обновиться до последнего релиза 10 версии или перекатиться на новенький 11?
...
Рейтинг: 0 / 0
08.02.2019, 23:00
    #39771426
Melkij
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Псевдонимы свойств JSONB в WHERE
Буерак,

обновиться на 10.6, на следующей неделе обновиться на 10.7 или 11.2.
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Псевдонимы свойств JSONB в WHERE / 6 сообщений из 6, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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