SQLLab
Практика· 7 мин· 20 XP

Вложенный JSONB: github и twitter

Задание

Контекст: Маркетолог готовит кампанию по кросс-промо в соцсетях и хочет собрать список аккаунтов GitHub и Twitter, привязанных к профилям пользователей. Эти данные хранятся во вложенном объекте social внутри profile: {"github": "...", "twitter": "..."}. Важно увидеть всех пользователей, а не только тех, у кого аккаунты заполнены, — так сразу видно, какую долю пользователей ещё нужно попросить привязать соцсети.

Техническое задание: Напишите SQL-запрос к таблице users.

Извлеките из profile город, а из вложенного объекта social — аккаунты GitHub и Twitter.

Выведите:

  • username — имя пользователя
  • location — город
  • github — аккаунт GitHub (или NULL, если не указан)
  • twitter — аккаунт Twitter (или NULL, если не указан)

Покажите всех пользователей независимо от того, заполнены ли у них соцсети. Отсортируйте по username.

Подсказка

Вложенный ключ извлекается цепочкой операторов: сначала -> для перехода к вложенному объекту social, затем ->> для текстового значения ключа: profile->'social'->>'github'.

Результат выполнения SQL-запроса
История твоих попыток решения
Показать эталонное решение задачи
ER-диаграмма таблиц базы данных
Ожидаемые колонки в правильном ответе
Появится после 3 неудачных попыток
Анализ плана выполнения запроса PostgreSQL

Результаты появятся здесь после выполнения запроса.