Przykładowa skrzynka SQL
1) Użyj CTE, aby uzyskać rekord maksymalnej wartości kodu wysyłki na podstawie ARDivisionNo, CustomerNodla każdego klienta
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) Aby usunąć rekord, użyj zapytania Usuń zamiast Wybierz i zmień klauzulę Where na rn> 1. Przykładowa skrzynka SQL
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;