Mysql
 sql >> Database >  >> RDS >> Mysql

Numero automatico e conteggio azzerato per ogni diverso valore di colonna

Non testato, ma questo dovrebbe fare il trucco:

SELECT
IF(@prev != a.clientid, @rownum:=1, @rownum:[email protected]+1) as rownumber, @prev:=a.clientid, a.*
FROM (
SELECT 
visitdate, 
clientid 
FROM visit, (SELECT @rownum := 0, @prev:='') sq
ORDER BY clientid,visitdate
) a

E a proposito, non esiste una "funzionalità @rownum", è solo una "soluzione" autoprodotta, @rownum è solo una variabile. Potresti anche chiamarlo @qualunque cosa.