Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Jumlahkan nilai kolom berdasarkan sekelompok nilai dari kolom lain

Karena mysql tidak memiliki dukungan untuk fungsi windowing, kami harus membuat peringkat grup kami sendiri untuk tabel Anda, dan kemudian kueri lain untuk mengoperasikan hasilnya.

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

demo di sini




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. menjalankan container docker membutuhkan setidaknya 1 argumen

  2. SQL:bagaimana kueri dalam urutan sql dengan dibuat dalam kasus ini

  3. brew install mysql, error saat mencoba menghentikan server

  4. Bantuan dengan MySql Query - Baris yang Memegang Maksimum Bijaksana Grup dari Kolom Tertentu

  5. file tidak diunggah di ajax php mysql