Предположим, у меня есть эти таблицы:
- LEARNERS: LEARNER_ID, LEARNER_NAME
- PACKAGE: PACKAGE_ID, PACKAGE_NAME
- LEARNER_PACKAGES: LEARNER_ID (From LEARNERS table),
PACKAGE_ID (From PACKAGE table), DUE_DATE, DATE_COMPLETED (NULLABLE)
Я хотел бы создать запрос SQL, чтобы вернуть все пакеты для каждого учащегося:
Для LEARNER_ID 123 вернуть все его пакеты:
LEARNER_NAME, PACKAGE_NAME, DUE_DATE, DATE_COMPLETED
Я пробовал это:
SELECT DISTINCT p.PACKAGE_NAME, lp.PACKAGE_ID, lp.DUE_DATE, lp.DATE_COMPLETED
FROM LEARNER_PACKAGES lp,
PACKAGE p
WHERE lp.LEARNER_ID = 123 AND
lp.PACKAGE_ID = p.ID;
Возвращает неожиданный результат, только часть желаемого результата. Но я понятия не имею, что попробовать дальше.
Oracle express 12.