Size: a a a

pgsql – PostgreSQL

2020 June 13

Ð

Ð in pgsql – PostgreSQL
источник

Ð

Ð in pgsql – PostgreSQL
боин я бы показал но с телефона не могу еще и в пути )
источник

ЕР

Евгений Ры́марев... in pgsql – PostgreSQL
Ð
сделай функцию get_by_lang(field, lang), если там что-то сложное, и вызывай ее в селекте, или через json path
А я думаю может лучше просто в селекте генерировать все поля из json и сравнивать. Тут проект лёгкий. Высокой нагрузки не будет. И запросов не так много.
источник

Ð

Ð in pgsql – PostgreSQL
ну да так и выйдет, только лучше jsonb
источник

ЕР

Евгений Ры́марев... in pgsql – PostgreSQL
Мне изначально надо было объекты json сравнивать, но раз нельзя, то буду каждое поле отдельно сравнивать и всё.
источник
2020 June 14

Ð

Ð in pgsql – PostgreSQL
только задолбаешься индекс по такой херне делать
источник

ЕР

Евгений Ры́марев... in pgsql – PostgreSQL
По сути он и не нужен. У меня только на этапе инициализации идёт сравнение по json-полям. Далее либо вставка, либо удаление, либо апдейт. Селекты по другим полям.
источник

Ð

Ð in pgsql – PostgreSQL
апдейты жсон-полей это отдельная боль
источник

ЕР

Евгений Ры́марев... in pgsql – PostgreSQL
Ð
апдейты жсон-полей это отдельная боль
Почему? Я не буду отдельные значения менять. Сразу весь объект
источник

ЕР

Евгений Ры́марев... in pgsql – PostgreSQL
Но на будущее уже запомню, что JSON - это зло и постараюсь не применять на практике без особой на то необходимости
источник

Ð

Ð in pgsql – PostgreSQL
тогда не так больно, но вот если в строке лежит большой документ вместо словаря, и надо например поменять название "Белоруссия" на "Беларусь", да еще в каждой строке таблицы, сам понимаешь)
источник

ЕР

Евгений Ры́марев... in pgsql – PostgreSQL
Ð
тогда не так больно, но вот если в строке лежит большой документ вместо словаря, и надо например поменять название "Белоруссия" на "Беларусь", да еще в каждой строке таблицы, сам понимаешь)
Благо, у меня таких операций в этом проекте не предвидится.
источник

Ð

Ð in pgsql – PostgreSQL
благо, да
источник

Ð

Ð in pgsql – PostgreSQL
я как-то лет 8 примерно назад, делал с тремя чуваками в команде проект на монге, там жсоны эти везде, поначалу да, клево. Но потом через год такой ад начался, мама не горюй, в результате все эти деревья распались на обычные реляционные отношения, только без реляционных возможностей, а джойны и транзакции приходилось делать на фронте. Проект в итоге поработал и благополучно умер. Но зато такой урок и ценный опыт остался на всю жись :)
источник

ЕР

Евгений Ры́марев... in pgsql – PostgreSQL
Ð
я как-то лет 8 примерно назад, делал с тремя чуваками в команде проект на монге, там жсоны эти везде, поначалу да, клево. Но потом через год такой ад начался, мама не горюй, в результате все эти деревья распались на обычные реляционные отношения, только без реляционных возможностей, а джойны и транзакции приходилось делать на фронте. Проект в итоге поработал и благополучно умер. Но зато такой урок и ценный опыт остался на всю жись :)
Пока сла́бо представляю, как можно переделать на lang-таблицы. Даже если представить, что я переделаю все JSON-поля на одну language-таблицу, то всё равно придётся вручную делать в начале проверку записи в language-таблице, потом если есть, то брать этот объект, потом искать в основной таблице. Поэтому JSON тут приятнее получается.
источник

Ð

Ð in pgsql – PostgreSQL
Евгений Ры́марев
Пока сла́бо представляю, как можно переделать на lang-таблицы. Даже если представить, что я переделаю все JSON-поля на одну language-таблицу, то всё равно придётся вручную делать в начале проверку записи в language-таблице, потом если есть, то брать этот объект, потом искать в основной таблице. Поэтому JSON тут приятнее получается.
либо джойном, либо субселектом
источник

ЕР

Евгений Ры́марев... in pgsql – PostgreSQL
Ð
либо джойном, либо субселектом
🤮
источник

Ð

Ð in pgsql – PostgreSQL
🤨
источник

ЕР

Евгений Ры́марев... in pgsql – PostgreSQL
Ð
🤨
Не тот случай для джойна
источник

Ð

Ð in pgsql – PostgreSQL
возможно, не буду настаивать
источник