Ricerca…
Sintassi
- ROW_NUMBER ()
- OVER ([PARTITION BY value_expression, ... [n]] order_by_clause)
Numeri di riga senza partizioni
Includere un numero di riga in base all'ordine specificato.
SELECT
ROW_NUMBER() OVER(ORDER BY Fname ASC) AS RowNumber,
Fname,
LName
FROM Employees
Numeri di riga con partizioni
Utilizza un criterio di partizione per raggruppare la numerazione delle righe in base ad essa.
SELECT
ROW_NUMBER() OVER(PARTITION BY DepartmentId ORDER BY DepartmentId ASC) AS RowNumber,
DepartmentId, Fname, LName
FROM Employees
Elimina tutto tranne l'ultimo record (da 1 a molti tabella)
WITH cte AS (
SELECT ProjectID,
ROW_NUMBER() OVER (PARTITION BY ProjectID ORDER BY InsertDate DESC) AS rn
FROM ProjectNotes
)
DELETE FROM cte WHERE rn > 1;
Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow