FIDDLE SQL mẫu
1) Sử dụng CTE để nhận bản ghi giá trị mã tàu tối đa dựa trên ARDivisionNo, CustomerNofor từng Khách hàng
WITH cte AS (
SELECT*,
row_number() OVER(PARTITION BY ARDivisionNo, CustomerNo ORDER BY ShipToCode desc) AS [rn]
FROM t
)
Select * from cte WHERE [rn] = 1
2) Để xóa bản ghi, hãy sử dụng Xóa truy vấn thay vì Chọn và thay đổi Mệnh đề Trường hợp thành rn> 1. Mẫu SQL FIDDLE
WITH cte AS (
SELECT*,
row_number() OVER(PARTITION BY ARDivisionNo, CustomerNo ORDER BY ShipToCode desc) AS [rn]
FROM t
)
Delete from cte WHERE [rn] > 1;
select * from t;