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

MySQL Query untuk mendapatkan hitungan per jam

anda dapat menyelesaikan ini dengan membuat tabel yang akan berisi 24 nilai selama berjam-jam (00:00, 01:00 dll) dan melakukan penggabungan kiri (atau kanan) dengannya dan tabel Anda mengizinkan nol sehingga Anda akan memiliki semua 24 baris bahkan jika tabel Anda berisi 0 baris sama sekali, maka grup menurut akan berfungsi dengan baik.

Jangan lupa untuk memotong semuanya kecuali jam dari meja Anda ketika Anda melakukan join sehingga hasil dari fungsi Anda menelepon &melakukan join on bisa sama dengan nilai tabel bantuan ini.

anda dapat menggunakan kueri berikut untuk melakukan pekerjaan setelah mengisi tabel testtime dengan 24 nilai test_time

select test_time,sum(sign(coalesce(idFromYourTable,0))) as count from testtime 
left join yourTable on test_time=hour(yourTableTime) 
group by test_time

Ini akan memberikan 0 sebagai hitungan jika tidak ada nilai yang cocok dengan baris dari tabel pengujian, sementara memiliki count(*) akan memberikan 24 baris dengan 1, bukan 0 bahkan jika tabel Anda kosong, juga jika hanya ada 1 baris di tabel Anda. tidak mungkin membedakan perbedaan antara 0 baris karena hasilnya akan terlihat sama untuk mengikuti 2 baris yang berbeda

sebab keduanya akan memberikan hasil yang sama jumlah baris sama dengan 1 , sedangkan teknik penjumlahan memperlakukan baris ini secara berbeda



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Pemantauan MySQL yang Efektif Dengan Dasbor SCUMM:Bagian 3

  2. MySQL GROUP_CONCAT dengan COLUMN SPLIT

  3. Bisakah Django ORM melakukan ORDER BY pada nilai kolom tertentu?

  4. Fungsi IF di H2 untuk kompatibilitas MySQL

  5. Coba lagi kebuntuan ActiveRecord3