## Контекст (таблицы и пример данных) ### Таблицы - `users(id, full_name, email, city, age, registe
SQL Developer
Senior
## Контекст (таблицы и пример данных)
### Таблицы
- `users(id, full_name, email, city, age, registered_at)`
- `orders(id, user_id, order_date, amount, status)`
- `payments(id, order_id, payment_date, payment_type, paid_amount)`
### Пример данных
**orders**
| id | user_id | order_date | amount | status |
|---:|--------:|-------------|--------:|--------|
| 10 | 1 | 2025-03-01 | 120.00 | paid |
| 12 | 1 | 2025-03-05 | 80.00 | paid |
| 13 | 1 | 2025-03-07 | 5000.00 | paid |
| 14 | 1 | 2025-03-08 | 300.00 | new |
---
## Задача
Вывести три самых дорогих заказа каждого пользователя.
Ответы
```sql
SELECT *
FROM (
SELECT o.*, ROW_NUMBER() OVER (PARTITION BY user_id ORDER BY amount DESC, id DESC) AS rn
FROM orders o
) t
WHERE rn <= 3
ORDER BY user_id, rn;
```