नमूना SQL FIDDLE
1) प्रत्येक ग्राहक के लिए ARDivisionNo, CustomerNo के आधार पर अधिकतम शिप कोड मान रिकॉर्ड प्राप्त करने के लिए CTE का उपयोग करें
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) रिकॉर्ड को हटाने के लिए चयन के बजाय क्वेरी हटाएं का उपयोग करें और जहां क्लॉज को आरएन> 1 में बदलें। नमूना 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;