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

MySQL Jumlahkan beberapa nilai kolom dengan ketentuan

Jika pengguna menggunakan beberapa APPS pada satu perangkat, kueri ini akan menggunakan APPS baris dengan usage_start_time tertinggi :

select  a.userid
,       sum(u.high_count)
,       sum(u.medium_count)
from    apps a
join    `usage` u
on      u.appid = a.id
join    (
        select  u.device_id
        ,       a.userid
        ,       max(a.usage_start_time) as max_start_time
        from    apps a
        join    `usage` u
        on      u.appid = a.id
        group by
                u.device_id
        ,       a.userid
        ) filter
on      filter.device_id = u.device_id
        and filter.userid = a.userid
        and filter.max_start_time = a.usage_start_time
group by
        a.userid

Di dataset Anda, itu akan memilih baris penggunaan 5, 3, 4 untuk pengguna 12 .

Lihat itu bekerja di SQL Fiddle.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Server tidak merespons (atau soket server MySQL lokal tidak dikonfigurasi dengan benar) di server wamp

  2. MySQL SELECT CONCAT Bersyarat

  3. Buat JSON multi-level dengan PHP dan MySQL

  4. Pernyataan MySql bersiap tidak lengket

  5. Parameter @Nama tidak ditemukan dalam koleksi