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

MySQL:Bagaimana cara SUM() a TIMEDIFF() pada grup?

Gunakan:

  SELECT t.user_id,       
         SEC_TO_TIME(SUM(TIME_TO_SEC(t.endtime) - TIME_TO_SEC(t.starttime))) AS timediff
    FROM MYTABLE t
GROUP BY t.user_id

Langkah-langkah:

  1. Gunakan TIME_TO_SEC untuk mengonversi WAKTU ke detik untuk operasi matematika
  2. Jumlah selisihnya
  3. Gunakan SEC_TO_TIME untuk mengubah detik kembali ke WAKTU

Berdasarkan data sampel, saya baru saja menyarankan:

  SELECT t.user_id,       
         TIMEDIFF(MIN(t.startdate), MAX(t.enddate)) AS timediff
    FROM MYTABLE t
GROUP BY t.user_id   


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP beberapa panggilan fungsi objek

  2. Optimalkan kueri django untuk menarik kunci asing dan hubungan django-taggit

  3. Bagaimana saya bisa menggunakan Variabel Buatan Pengguna MySql di .NET MySqlCommand?

  4. Stempel waktu Laravel untuk ditampilkan dalam milidetik

  5. Python 3.4.0 dengan database MySQL