## Контекст (таблицы и пример данных) ### Таблицы - `order_items(order_id, product_id)` ### Пример
SQL Developer
Senior
## Контекст (таблицы и пример данных)
### Таблицы
- `order_items(order_id, product_id)`
### Пример данных
**order_items**
| order_id | product_id |
|---------:|-----------:|
| 1 | 10 |
| 1 | 11 |
| 2 | 10 |
| 2 | 12 |
| 3 | 10 |
| 3 | 11 |
---
## Задача
Для товара `product_id = 10` найти товар, который чаще всего встречается с ним в одном заказе.
Вернуть: `other_product_id`, `cooccurrence_cnt`.
Ответы
```sql
WITH orders_with_10 AS (
SELECT DISTINCT order_id
FROM order_items
WHERE product_id = 10
)
SELECT oi.product_id AS other_product_id,
COUNT(*) AS cooccurrence_cnt
FROM order_items oi
JOIN orders_with_10 o10 ON o10.order_id = oi.order_id
WHERE oi.product_id <> 10
GROUP BY oi.product_id
ORDER BY cooccurrence_cnt DESC, other_product_id
LIMIT 1;
```