Так, например, у меня есть две таблицы
Person Table
ID : Name
1 : Bob
2 : Jane
3 : Mike
4 : John
5: Mary
У меня также есть (current на самом деле является целым числом, но я использовал текст, чтобы сделать его более читабельным):
Job Table
ID : Name : PersonID : JobStatus
1 : Plumber : 1 : current
2 : Doctor : 2 : past
3 : Driver : 2 : current
4 : Cook : 3 : current
5: Programmer : 5 : past
Я хотел бы объединить две таблицы, чтобы я мог получить список всех, но я хочу включить только текущие задания в левое соединение. Другими словами, я хочу, чтобы результат был:
Bob : Plumber : current
Jane : Driver : current
Mike : Cook : current
John : :
Mary : :
Как я могу сделать это с помощью объединения. Я пытался сделать:
SELECT
person.name, job.name, job.status
FROM
person
LEFT JOIN
job ON person.id=job.person.id
Но проблема в том, что в этом случае я увижу две записи для Джейн, одну для ее прошлой работы Доктора, а также ее новую работу Водителя. И если я добавлю предложение where, например:
WHERE job.status='current'
Затем он удаляет удаляет Джона и Мэри из списка.
Как я могу написать объединение, которое покажет всем людям, включая только текущие вакансии?