десериализация json
возможна. Почитайте про json операторы в postgres
Возможна, но, скорее всего, вы этого не хотите.
Почему не хочу?
Потому что прямая трансляция ответа из Пг (что вы хотите сделать) ведет к перетаскиванию логики приложения при его развитии в базу, а база это самое узкое место в приложении. Если оно у вас веб, то бек горизонтально масштабируется, а база - сложнее.
Поэтому сразу и уточнил в своем вопросе про "или этим должен заниматься бэк' Понял, благодарю 👍🏻👍🏻
Этим бэк, да, причём на уровне сериализиции. Потому что JSON - это один из возможных вариантов сериализации данных. Может там ещё XML потребуется и т.п.)
Ну мы не знаем ваш контекст. Может у вас там 100500 архитекторов, но вы просто на новую СУБД выходите. Озвучивайте изначальную задачу-же.
Аргумент Архитекторов не имеется, сам себе если только Тыкаюсь, изучаю postgres в разрезе бэкенда, пытаюсь понять, как формировать не плоский объект (со связями) для вывода данных в удобном формате
Если вам нужен быстрый ликбез, то вот: Есть 2 подхода (оба рабочие): 1) Данные в базе, методы доступа к данным в базе. Все делается через хранимые процедуры. 2) Данные в базе, методы доступа к беке. Контроль доступа к данным в беке. Мне нравится 2й, так как масштабировать базу - это то еще удовольствие, особенно при первом подходе. Если говорить про 2й подход, то из базы достаются данные за как можно меньшее количество SQL запросов, но без фанатизма (идея в том что чем больше джойнов вы сделаете, тем большая вероятность оптимизации запроса, чем если-бы вы это руками в беке делали, но делать 1 большой SQL запрос - тоже не всегда верно). А потом на беке занимаетесь представлением и т.д.
Верно понимаю про 2 подход - к примеру, мне нужен пост с юзером, у которого данные хранятся в собранном объекте (как на скрине) и 1-м запросом забираем пост по id, далее 2-м запросом забираем юзера по FK (user_id) с поста для нужного мне представления? Ибо пока с одного запроса с джоином не совсем понял, как собрать данные в нужном мне виде (т.к. все приходит в плоском виде)
Если у вас только один пост, то вы просто можете JOIN'ить юзера с постом и получить одну строку где и пост и пользователь.
Так изначально и делал, но появился вопрос в итоговом выводе данных (т.к. пометок там никаких нету, типа user.id, post.id *имеются в виду не лейблы для таблиц*) В любом случае за базу/бэк понял, буду разбираться дальше Благодарю!
Обсуждают сегодня