Я как бы потерял какой SQL-запрос я должен сделать для достижения того, чего хочу.Нужна помощь/пояснение к СОЕДИНЕННОМУ запросу
Скажем, у меня есть три таблицы:
select * FROM trip;
| trip_id | title | description
----------------------------------
| 1 | title1 | desc1 |
| 2 | title2 | desc2 |
| 3 | title3 | desc3 |
| 4 | title4 | desc4 |
| 5 | title5 | desc5 |
| 6 | title6 | desc6 |
select * FROM weekly_report;
| report_id | trip_id| incident_id
----------------------------------
| 1 | 1 | (null) |
| 2 | 1 | (null) |
| 3 | 1 | 1 |
| 4 | 2 | 2 |
| 5 | 3 | 3 |
| 6 | 3 | (null) |
select * FROM incident;
| incident_id | error_code |
----------------------------------
| 1 | 22223 |
| 2 | 25456 |
| 3 | 25456 |
Так что для маленького operationnal знания:
- Таблица поездки содержит 1 запись на поездку сделанного клиента.
- Еженедельный отчет содержит отчет за неделю поездки. (1 поездка 2 недели будет иметь 2 записи, 1 поездка или 5 недель будет иметь 5 ..).
- Таблица инцидентов содержит 1 запись за инцидент. (Если инцидент произошел в течение недели: мы создаем запись в таблице инцидентов, иначе мы ничего не делаем)
Я хотел бы найти в одном запросе (или, если это необходимо, с подзапросами) количество поездок, в которых, по крайней мере, на неделю произошел инцидент, объявленный для error_code «25456».
Ожидаемый результат из данных образца: 2 (потому что для отключения 2 и 3 существует инцидент с кодом ошибки 25456).
Я могу объяснить больше, если потребуется, есть ли кто-нибудь, кто хочет помочь мне?
Спасибо,
mysql or oracle? – GurV