Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Zsumuj wartości z kolumny na podstawie grupy wartości z innej kolumny

Ponieważ mysql nie obsługuje funkcji okienek, musimy stworzyć własny ranking grupowy dla Twojej tabeli, a następnie kolejne zapytanie, aby operować na wynikach.

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

pokaz tutaj




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. zapisywanie CSV z kodowaniem UTF-16BE w PHP

  2. c# mysql suma zapytania do etykiety

  3. Jak wstawić wartości do tabeli z dynamicznymi kolumnami Jdbc/Mysql

  4. Oblicz średnią, wariancję i odchylenie standardowe dwóch liczb w dwóch różnych wierszach/kolumnach za pomocą sql / PHP w określonych dniach

  5. procedura składowana mysql, która wywołuje się rekurencyjnie