У меня возникли проблемы, и мне нужна помощь в поиске правильного запроса SQL.Вот мой код:
SELECT firstname, lastname, date_of_birth
FROM `data`
WHERE firstname IN (SELECT firstname
FROM `data`
WHERE diagnosis_location = 'Mayo')
AND lastname IN (SELECT lastname
FROM `data`
WHERE diagnosis_location = 'Mayo')
AND date_of_birth IN (SELECT date_of_birth
FROM `data`
WHERE diagnosis_location = 'Mayo')
AND firstname IN (SELECT firstname
FROM `data`
WHERE diagnosis_location = 'Lahey')
AND lastname IN (SELECT lastname
FROM `data`
WHERE diagnosis_location = 'Lahey')
AND date_of_birth IN (SELECT date_of_birth
FROM `data`
WHERE diagnosis_location = 'Lahey')
Да, это монстр запроса и, вероятно, не такой уж эффективный.Но то, что я пытаюсь сделать, - это вернуть только имя, фамилию и дату рождения всех пациентов с диагнозом как в «Мейо», так и в «Лахе».Этот запрос возвращает этих пациентов, но возвращает несколько строк с одинаковыми точными данными.
Как я могу ограничить его, чтобы дубликаты одинаковых точных результатов были обрезаны?