두 개의 쿼리를 병합하려고합니다. 목표는 MAX (ID)를 기반으로하는 최신 리스팅의 제목과 제목과 함께 고유 한 고객 전자 메일이있는 레코드 세트를 얻는 것입니다.MS SQL DISTINCT가있는 MAX (ID)를 기반으로 여러 열을 선택하십시오.
DISTINCT를 사용하면 전자 메일과 ID를 얻을 수 있지만 분명히 제목을 추가하면이 문제가 해결됩니다.
이
내가 지금까지 무엇을 가지고 :SELECT DISTINCT MAX(EV_ID) As EV_ID, EV_ContactEmail, EV_CusName
FROM tblEvents ev
INNER JOIN tblCustomers cus ON cus.CUS_ID = ev.EV_CustomerID
WHERE (
CUS_IsAdmin = 'y'
AND CUS_Live = 'y'
AND EV_Live = 'y'
AND EV_EndDate >= '2012/7/5 12:00:00 AM'
AND EV_ContactEmail <> ''
)
GROUP BY EV_ContactEmail
은 내가 가입 자체를 할 필요가 나타 말을 여기에 일부 게시물을 발견했지만 내가 레코드의 동일한 금액을 돌려받을 수 없지만, 제목으로 더 많은 것을 반환합니다.
SELECT DISTINCT MAX(EV_ID) As EV_ID, ev.EV_Title, EV_ContactEmail, EV_CusName
FROM tblEvents ev
INNER JOIN tblCustomers cus ON cus.CUS_ID = ev.EV_CustomerID
INNER JOIN (
SELECT EV_Title, MAX(EV_ID) AS MaxID
FROM tblEvents
GROUP BY EV_Title
) groupedev ON ev.EV_Title = groupedev.EV_Title AND ev.EV_ID = groupedev.MaxID
WHERE (
CUS_IsAdmin = 'y'
AND CUS_Live = 'y'
AND EV_Live = 'y'
AND EV_EndDate >= '2012/7/5 12:00:00 AM'
AND EV_ContactEmail <> ''
)
GROUP BY EV_ContactEmail, ev.EV_Title
누구에게 잘못 되었나요?
당신은 또한 – Kshitij