Size: a a a

pgsql – PostgreSQL

2020 May 22

YS

Yaroslav Schekin in pgsql – PostgreSQL
Alex
ну я специально дал только выдержку из таблицы, те поля, с которыми мне надо поработать)
что такое EAV - понятия не имею)
я вроде разобрался через
select id where id in (select id from table where field_id = 102 and value = 'anothertxt') and field_id = 101 and value < datetime

логика правильная?)
На этот вопрос без знания того, о чём я спросил, невозможно ответить, Вы это понимаете?
источник

SB

Sergey Belan in pgsql – PostgreSQL
is_valid_date надо будет написть самому
вот ссылка https://stackoverflow.com/questions/25374707/check-whether-string-is-a-date-postgresql
источник

EA

Erlan A in pgsql – PostgreSQL
Yaroslav Schekin
Это не таблица, а набор каких-то строк. ;) Покажите \d — а то так не видно ни PK, ни типов.
Кстати — это EAV, да?
\d+ пробуйте
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Sergey Belan
Если я правильно понял суть задачи то как то так
SELECT id
FROM t1
WHERE
 (field_id = 102 AND value = ‘anothertext’)
 OR (is_valid_date(value) AND extract(years from value::datetime) = 2019 AND field_id = 101)
А это неправильный запрос независимо от структуры таблицы. ;)
Почему Вы думаете, что "is_valid_date(value)" обязано выполняться раньше, чем extract(years from value::datetime), и, соответственно, вообще защищает от ошибки преобразования типов?
источник

IZ

Ilia Zviagin in pgsql – PostgreSQL
Alex
помогите мне с sql'ем, что-то с утра не соображу никак
есть таблица
id field_id value
1  101       datetime
1  102       text
2  101       datetime
2  102       anothertext

как мне выбрать из этой таблицы все айдишники, где value в случае field_id = 102 равно anothertext
и value в случае field_id = 101 было год назад
CASE -выражение тебе нужно.
источник

SB

Sergey Belan in pgsql – PostgreSQL
Yaroslav Schekin
А это неправильный запрос независимо от структуры таблицы. ;)
Почему Вы думаете, что "is_valid_date(value)" обязано выполняться раньше, чем extract(years from value::datetime), и, соответственно, вообще защищает от ошибки преобразования типов?
А разве интерпритатор SQL этого не гарантирует? Запрос строил по аналогии с импертивными языками программирования
источник

IZ

Ilia Zviagin in pgsql – PostgreSQL
Sergey Belan
А разве интерпритатор SQL этого не гарантирует? Запрос строил по аналогии с импертивными языками программирования
Эт зря...
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Sergey Belan
А разве интерпритатор SQL этого не гарантирует? Запрос строил по аналогии с импертивными языками программирования
Нет, ни в коем случае. SQL может выполнять любые части запроса в произвольном порядке, игнорируя при этом возможность ошибок, если такое преобразование при этом условии даст тот же результат (и все известные мне RDBMS это используют).
источник

SB

Sergey Belan in pgsql – PostgreSQL
Спасибо, больше не буду писать такие запросы😅
источник

AB

Aleksey Budaev in pgsql – PostgreSQL
Посмотрите пожалуйста схему БД на соответствие 3НФ, там 3 сущности всего. https://clck.ru/NbEEi
источник

АК

Андрей Казанцев... in pgsql – PostgreSQL
У меня есть таблица компаний и ачивок с связью один ко многим и есть пользователи со связью к ачивкам как многие ко многим. Как узнать что пользователь собрал все ачивки?
источник

АК

Андрей Казанцев... in pgsql – PostgreSQL
Есть ли в постгрес что-то типо множества чтобы проврить что одно входит в другое?
источник

V

Valery in pgsql – PostgreSQL
Выбрать все ачивки, которых нет у пользователя? Или нужно найти всех, у кого все ачивки?
источник

V

Valery in pgsql – PostgreSQL
Ну или сумму ачивок у пользователя считать...
источник

V

Valery in pgsql – PostgreSQL
Задача имеет множество решений🙄
источник

OK

Oleg Kuzmenko in pgsql – PostgreSQL
Андрей Казанцев
Есть ли в постгрес что-то типо множества чтобы проврить что одно входит в другое?
INNER JOIN, например
источник

РЖ

Роман Жарков... in pgsql – PostgreSQL
Андрей Казанцев
У меня есть таблица компаний и ачивок с связью один ко многим и есть пользователи со связью к ачивкам как многие ко многим. Как узнать что пользователь собрал все ачивки?
Какого цвета учебник?
источник

V

Valery in pgsql – PostgreSQL
Роман Жарков
Какого цвета учебник?
Вы ещё как зовут лектора спросите😃
источник

РЖ

Роман Жарков... in pgsql – PostgreSQL
Valery
Вы ещё как зовут лектора спросите😃
Это вопрос на пятёрку!
источник

s

sexst in pgsql – PostgreSQL
Valery
Задача имеет множество решений🙄
И ещё больше в зависимости от того, как это всё реализовано в базе
источник