Я знаю, что этот вопрос уже рассматривался здесь, но мне нужны результаты, отличные от других вопросов.
Мне нужно заказать некоторые результаты по названию учреждения, а затем по фамилии кандидатов.
SELECT DISTINCT candidates.*, histories.job_title, institutions.name
FROM candidates
JOIN histories ON histories.candidate_id = candidates.id
JOIN institutions ON histories.institution_id = institutions.id
WHERE candidates.id IN (1,3,4,6)
ORDER BY institutions.name, candidates.last_name;
Моя проблема заключается в том, что в настоящее время возвращаются все истории кандидатов, которые присоединились (есть текущие / прошлые занятия), но если я добавлю
AND histories.finish_date IS NULL
туда, где не вернутся кандидаты, у которыхистория или есть дата окончания.
Спасибо, Алекс
Подзапрос
SELECT DISTINCT candidates.*,
(SELECT institution_id
FROM histories
WHERE histories.candidate_id = candidates.id AND histories.finish_date IS NULL
LIMIT 1) AS job_title
FROM candidates
JOIN institutions ON histories.institution_id = institutions.id
WHERE candidates.id IN (1,3,4,6)