** Переписано для уточнения.** Я просмотрел более десятка постов на нескольких сайтах, пытаясь это выяснить, и попытался применить упомянутые вещи - и все без удачи.У меня есть запрос, объединяющий 3 таблицы.Я использую MAX (дата) в области SELECT вместе с 9 другими полями.Что-то, что я делаю, требует от меня перечисления всех этих полей в области GROUP BY для выполнения запроса.Я, очевидно, что-то делаю не так.
В идеале я бы хотел, чтобы запрос возвращал только одну запись для человека на основе самой последней записи.Таким образом, человек с уникальным идентификатором может иметь 3 записи из-за трех датированных записей.Я хочу эту строку с самой последней записью даты.Извините, если это ясно, как грязь.Идеи?TIA!
SELECT
DISTINCT s.ID, s.FIRST_NAME, s.LAST_NAME, a.ADDR1, a.CITY, a.STATE, a.ZIP, e.EFF_DT, e.TERM_DT, MAX(e.MEPE_EFF_DT)
FROM SUBSC s
INNER JOIN ADDR a
on s.SID = a.SID
INNER JOIN ELIG e
on e.EID = s.EID
WHERE a.GID = 99
AND e.ELIG_IND = 'Y'
GROUP BY s.ID, s.FIRST_NAME, s.LAST_NAME, a.ADDR1, a.CITY, a.STATE, a.ZIP, e.EFF_DT, e.TERM_DT
ORDER BY s.LAST_NAME ASC