Numerado duplicado de cada valor [duplicado]

Jan 12 2021

Necesito agregar una columna a mi tabla con el recuento de cada aparición de. Entonces, si el valor es único, el valor de la columna debe ser 1, pero si hay copias múltiples, necesito un valor diferente para cada fila (1,2 ...)

La base de datos es postgres por ejemplo

carné de identidad valor contar
1 un 1
2 un 2
3 segundo 1
4 segundo 2
5 segundo 3
6 C 1

ejemplo de base de datos https://dbfiddle.uk/?rdbms=postgres_10&fiddle=0e7132f3f094bd93b390ccae2e811696

Respuestas

5 a_horse_with_no_name Jan 12 2021 at 16:49

Esto se puede hacer usando funciones de ventana.

select id, value, count(*) over (partition by value order by id) 
from the_table
order by id, value;