sql >> Database >  >> RDS >> Mysql

MySQL - Teller binnen groep

Door de gebruiker gedefinieerde variabelen worden handig bij het oplossen van deze problemen. Dit zou moeten werken:

select g, x, counter from (
    select g, x,
        @counter := if (g = @prev_g, @counter + 1, 1) counter,
        @prev_g := g
    from tb, (select @counter := 0, @prev_g := null) init
    order by g, x
) s

Als u de vierde kolom niet erg vindt, kunt u de buitenste selectie veilig verwijderen. Dat zou de prestaties aanzienlijk verbeteren.




  1. Hoe pg_typeof() werkt in PostgreSQL

  2. Java en SQL :retourneert null of throw-uitzondering?

  3. INSERT uitvoeren als de tabel leeg is?

  4. Verbinding maken met Docker MySQL-container van localhost?