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

Autonummer og nulstillingstælling for hver anden kolonneværdi

Ikke testet, men dette burde gøre tricket:

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

Og btw, der er ingen "@rownum-funktionalitet", det er bare en selvlavet "løsning", @rownum er bare en variabel. Du kan lige så godt kalde det @whatever.




  1. Indsæt i med union all og nextval virker ikke med duplikerede værdier

  2. Sådan forespørges jsonb-arrays med IN-operator

  3. dårlig værdi for typen lang:- Postgresql, Hibernate, Spring

  4. Synkroniser alle brugerroller mellem to Wordpress-installationer, der deler de samme wp_users og wp_usermeta-tabeller.