variable una row_number registros numeros numero hacer generar fila ejemplos contador consulta consecutivos consecutivo como sql-server tsql unique row-number

sql server - una - row_number() Agrupar por?



row_number() sql server (2)

Tengo un conjunto de datos que contiene las columnas Date , Cat y QTY . Lo que quiero hacer es agregar una columna única que solo cuente valores únicos de Cat cuando haga el recuento de filas. Esto es lo que quiero que mi conjunto de resultados se vea así:

Al usar la consulta SQL a continuación, puedo obtener una fila usando la función row_number() .

Sin embargo, no puedo obtener esa columna única que he descrito anteriormente. Cuando agrego group by a la cláusula OVER , no funciona. ¿Alguien tiene alguna idea de cómo puedo hacer que funcione esta columna de recuento única?

SELECT Date, ROW_NUMBER() OVER (PARTITION BY Date ORDER By Date, Cat) as ROW, Cat, Qty FROM SOURCE


Aquí hay una solución alternativa.

No necesita preocuparse por el pedido de Cat. Usando el siguiente SQL, podrá obtener valores únicos para su combinación de Fecha y Gato.

SELECT Date, ROW_NUMBER() OVER (PARTITION BY Date, Cat ORDER By Date, Cat) as ROW, Cat, Qty FROM SOURCE


DENSE_RANK() OVER (PARTITION BY date ORDER BY cat)