## Контекст (таблицы и пример данных) ### Таблицы - `events(id, payload jsonb)` > `payload` содерж
SQL Developer
Senior
## Контекст (таблицы и пример данных)
### Таблицы
- `events(id, payload jsonb)`
> `payload` содержит массив `items`, каждый item имеет `sku` и `qty`.
### Пример данных
**events**
| id | payload |
|---:|---------|
| 1 | {"items":[{"sku":"A","qty":2},{"sku":"B","qty":1}]} |
| 2 | {"items":[{"sku":"A","qty":3}]} |
---
## Задача
Посчитать суммарный `qty` по каждому `sku` по всем событиям.
Вернуть: `sku`, `total_qty`.
Ответы
```sql
SELECT
(item->>'sku') AS sku,
SUM((item->>'qty')::int) AS total_qty
FROM events e
CROSS JOIN LATERAL jsonb_array_elements(e.payload->'items') AS item
GROUP BY (item->>'sku')
ORDER BY sku;
```