## Контекст (таблицы и пример данных) ### Таблицы - `customers(id)` - `orders(id, customer_id)` - `
SQL Developer
Senior
## Контекст (таблицы и пример данных)
### Таблицы
- `customers(id)`
- `orders(id, customer_id)`
- `payments(id, order_id)`
### Пример данных
**customers**
| id |
|---:|
| 1 |
**orders**
| id | customer_id |
|---:|------------:|
| 10 | 1 |
| 11 | 999 |
**payments**
| id | order_id |
|---:|---------:|
| 100| 10 |
| 101| 999 |
---
## Задача
Найти:
1) заказы, которые ссылаются на несуществующего клиента
2) платежи, которые ссылаются на несуществующий заказ
Вернуть два набора в одном результате: `issue_type`, `bad_id`.
Ответы
```sql
SELECT 'order_missing_customer' AS issue_type, o.id AS bad_id
FROM orders o
LEFT JOIN customers c ON c.id = o.customer_id
WHERE c.id IS NULL
UNION ALL
SELECT 'payment_missing_order' AS issue_type, p.id AS bad_id
FROM payments p
LEFT JOIN orders o ON o.id = p.order_id
WHERE o.id IS NULL;
```