Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk Menukar Output Perbezaan Masa kepada Format Hari, Jam, Minit dan Kedua dalam MySQL?

Bagaimana untuk Menukar Output Perbezaan Masa kepada Format Hari, Jam, Minit dan Kedua dalam MySQL?

Patricia Arquette
Patricia Arquetteasal
2024-10-24 04:14:02554semak imbas

How to Convert Time Difference Output to Day, Hour, Minute, and Second Format in MySQL?

Menukar Output Perbezaan Masa kepada Format Hari, Jam, Minit dan Kedua dalam MySQL

Apabila bekerja dengan perbezaan masa dalam MySQL, ia selalunya berguna untuk memaparkan hasil dalam format yang lebih boleh dibaca oleh manusia, seperti hari, jam, minit dan saat. Ini boleh mencabar jika perbezaan masa adalah besar.

Andaikan anda mempunyai pertanyaan seperti:

SELECT TIMEDIFF(end_time,start_time) AS "total" FROM `metrics`;

yang mengembalikan nilai seperti:

116:12:10

mewakili 116 jam, 12 minit dan 10 saat. Untuk menukar ini kepada format yang lebih mudah dibaca, gunakan pertanyaan berikut:

SELECT CONCAT(
FLOOR(HOUR(TIMEDIFF(end_time,start_time)) / 24), ' days ',
MOD(HOUR(TIMEDIFF(end_time,start_time)), 24), ' hours ',
MINUTE(TIMEDIFF(end_time,start_time)), ' minutes')

Ganti end_time dan start_time dengan nama lajur sebenar anda.

Contohnya, katakan end_time ialah '2010-01 -06 08:46' dan masa_mula ialah '2010-01-01 12:30'. Pertanyaan di atas akan kembali:

4 days 20 hours 12 minutes

Perhatikan bahawa penyelesaian ini hanya berfungsi untuk perbezaan tarikh dalam masa 35 hari. Jika anda tahu terdapat lebih daripada 35 hari antara masa_mula dan masa_akhir, pertimbangkan untuk menggunakan TIMESTAMPDIFF.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Output Perbezaan Masa kepada Format Hari, Jam, Minit dan Kedua dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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