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

Menjumlahkan kueri di baris terakhir

Pertama-tama, Anda tidak memerlukan sub kueri, Anda dapat melakukan penghitungan pada suatu kondisi.

with rollup pengubah dapat ditambahkan ke group by klausul untuk memasukkan total keseluruhan. order by tidak dapat digunakan dalam kueri yang sama, tetapi dapat diterapkan dalam kueri luar.

Selanjutnya, dengan penggunaan coalesce Anda dapat mengganti null nilai untuk total baris tersebut dengan label pilihan Anda.

Terakhir, untuk tetap mengurutkan total baris di akhir, Anda dapat menambahkan is null ekspresi dalam order by klausa, yang akan dievaluasi menjadi false atau true . Yang terakhir dipesan terakhir.

select coalesce(checkby, 'Total') as checkby_or_total,
       fully,
       faulty,
       lasthour, 
       total 
from   (
        select   qcheck.checkby,
                 count(case result when 'fully tested & working' then 1 end)     as fully,
                 count(case result when 'faulty' then 1 end)                     as faulty,
                 count(case when finishdate >= now()-interval 1 hour then 1 end) as lasthour,
                 count(*) as total 
        from     qcheck
        where    date(finishdate) = CURDATE() 
        and      qcheck.checkby not like 'michael' 
        and      qcheck.checkby not like 'chaz'
        group by qcheck.checkby with rollup
        ) as main
order by    checkby is null, 
            total desc 



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana saya bisa menginisialisasi database MySQL dengan skema dalam wadah Docker?

  2. Kesalahan koneksi SSL saat menghubungkan ke RDS MySQL dari Django

  3. Pemicu MySQL:Perbarui saat mencapai waktu tertentu

  4. Gunakan kunci utama sensitif aksen di MySQL

  5. Cara Membuat Daftar Tabel di MySQL dan MariaDB