내 CustomerID에만 distinct를 적용하고 내 table1에 RecordUpdate_date 열이있는 최신 레코드를 가져 오려고합니다.두 테이블의 고유 한 열 MS SQL Server 2008
이 쿼리를 작성했지만 일부 레코드 (레코드)가 누락되어 중복 레코드가 발생합니다.
도와주세요. 감사
표 :
CustomerID, CustomerName, UpdateDate
표 2 :
CustomerID, DateofBirth
내 쿼리 :
SELECT a.CustomerID
,a.CustomerName
,a.RecordUpDate_date
,b.DateofBirth
FROM Table1 AS a
INNER JOIN (
SELECT CustomerID
,MAX(RecordUpdate_date) AS max_RecordUpdate_date
FROM Table1
GROUP BY CustomerID
) AS abc
ON abc.CustomerID = a.CustomerID
AND abc.max_RecordUpdate_date = a.RecordUpdate_date
INNER JOIN Table2 AS b
ON b.CustomerID = a.CustomerID
INNER JOIN (
SELECT CustomerID
,MAX(DateofBirth) AS max_dob
FROM table2
GROUP BY CustomerID
) AS m
ON m.CustomerID = a.Customer
AND m.max_cus = c.DateofBirth
형식 신의 사랑을위한 코드 – DLeh
무엇을 하시겠습니까? 설명 및 몇 가지 샘플 레코드를 제공하십시오. 어쨌든, 테이블이 정상적으로 보이지 않습니다! – Alisa
두 표의 모든 고객 ID의 고유 한 목록을 원하십니까? 각 테이블에서 DISTINCT CustomerID를 수행하고 두 테이블을 결합 할 수 있습니다. – Xedni