Bagaimanakah saya boleh mengira jumlah jam bekerja dalam seminggu dari jadual MySQL dengan nilai masa?

DDD
Lepaskan: 2024-11-06 22:13:02
asal
478 orang telah melayarinya

How can I calculate the total hours worked in a week from a MySQL table with time values?

Mengira Perbezaan Masa dalam MySQL

Anda mempunyai jadual MySQL dengan nilai tarikh-masa dalam format tertentu dan ingin mengira perbezaan antara mereka, kemudian jumlahkan keputusan untuk mendapatkan jumlah jam untuk tempoh tertentu. Mari kita terokai cara untuk mencapai ini.

Menggunakan TIME_TO_SEC() dan SEC_TO_TIME()

Fungsi TIME_TO_SEC() menukar nilai masa dalam format "HH:MM: SS" kepada bilangan saat yang diwakilinya. Untuk mengira perbezaan antara dua nilai masa, formula berikut boleh digunakan:

TIME_DIFFERENCE = TIME_TO_SEC(END_TIME) - TIME_TO_SEC(START_TIME)
Salin selepas log masuk

Walau bagaimanapun, memandangkan output yang diingini adalah dalam jam, kita perlu menukar perbezaan masa dari saat kepada jam. Ini boleh dilakukan menggunakan fungsi SEC_TO_TIME():

TOTAL_HOURS = SEC_TO_TIME(TIME_DIFFERENCE)
Salin selepas log masuk

Mengira Jumlah Jam

Untuk mencari jumlah jam bagi tempoh tertentu, seperti seminggu , pertanyaan berikut boleh digunakan:

SELECT SEC_TO_TIME( SUM( TIME_TO_SEC( `time` ) ) ) AS total_time
FROM time_table;
Salin selepas log masuk

Dalam pertanyaan ini, fungsi TIME_TO_SEC() digunakan pada setiap nilai masa dalam lajur masa. Hasilnya kemudian dijumlahkan menggunakan fungsi SUM(). Akhir sekali, fungsi SEC_TO_TIME() digunakan untuk menukar jumlah saat kepada jam, memberikan output yang diingini.

Atas ialah kandungan terperinci Bagaimanakah saya boleh mengira jumlah jam bekerja dalam seminggu dari jadual MySQL dengan nilai masa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!