## Контекст (таблицы и пример данных) ### Таблицы - `ledger(tx_id, client_id, tx_time, amount)` ##

SQL Developer Senior
## Контекст (таблицы и пример данных) ### Таблицы - `ledger(tx_id, client_id, tx_time, amount)` ### Пример данных **ledger** | tx_id | client_id | tx_time | amount | |-----:|----------:|---------------------|------:| | 1 | 1 | 2025-01-01 10:00:00 | 10 | | 2 | 1 | 2025-01-02 10:00:00 | 10 | | 3 | 1 | 2025-01-03 10:00:00 | 10 | | 4 | 2 | 2025-01-01 10:00:00 | 10 | | 5 | 2 | 2025-01-03 10:00:00 | 10 | --- ## Задача Найти клиентов, которые имели хотя бы одну транзакцию **в 3 последовательных календарных дня**. Вернуть: `client_id`.
Ответы
```sql WITH d AS ( SELECT DISTINCT client_id, tx_time::date AS day FROM ledger ), g AS ( SELECT client_id, day, (day - (ROW_NUMBER() OVER (PARTITION BY client_id ORDER BY day))::int) AS grp FROM d ) SELECT client_id FROM g GROUP BY client_id, grp HAVING COUNT(*) >= 3; ```