sql >> Databáze >  >> RDS >> Mysql

Sečtěte hodnoty sloupce na základě skupiny hodnot z jiného sloupce

Vzhledem k tomu, že mysql nepodporuje funkce oken, musíme pro vaši tabulku vytvořit vlastní hodnocení skupin a poté další dotaz, abychom mohli pracovat s výsledky.

select if(count(transaction) = 1, transaction, concat(min(transaction), '-', max(transaction))) transactions, sum(price) price 
  from (
    select if(`transaction` = @prev + 1, 
         if(@prev := `transaction`, @rank, @rank),
           if(@prev := `transaction`, @rank := @rank + 1, @rank := @rank + 1)
       ) gr,
       `transaction`,
       price
    from table1, (select @rank := 1, @prev := 0) q
    order by `transaction` asc
  ) q     
  group by gr

ukázka zde




  1. PostgreSQL:výběr řádků, které se vyskytují v určitý den v týdnu, v určitém časovém pásmu

  2. Jak používat tipy obrazovky Access 2019

  3. Úžasných 24 otázek souběžného manažerského rozhovoru

  4. může couchdb dělat smyčky