Заказы из JSON-пейлоада

Заказы из JSON-пейлоада

Ты — аналитик маркетплейса TinkerCart. Фронтенд сохраняет каждый заказ одним JSONB-документом в колонке details: канал продажи, применённый купон и итоговая сумма. Маркетингу нужна плоская витрина: из каких каналов приходят заказы и какие купоны реально используются, чтобы решить, какие промокампании продлевать. Разверни JSON в обычные колонки. У части заказов купона нет вовсе — такие заказы тоже нужны, просто без купона. Верни столбцы: - order_id — идентификатор заказа (целое число); - channel — значение ключа channel, как текст; - coupon — значение ключа coupon, как текст; NULL, если купона нет; - total_amount — значение ключа total, приведённое к числу numeric (без округления, как в данных). Сортировка: по order_id по возрастанию. Каждый заказ — ровно одна строка, ничего не отфильтровывай.

Пример ожидаемого ответа

Это пример правильного ответа — у него своё количество строк, оно не должно совпадать с таблицами в схеме. Названия столбцов в твоём ответе должны совпадать с этим примером — переименуй их через AS, если нужно.

order_idchannelcoupontotal_amount
1webSAVE1049.9
2appNULL120
3webWELCOME15.5
PostgreSQLv16

Здесь будет результат вашего запроса

Фокус-радио
На паузе · SomaFM · Fluid