Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL में TIME_TO_SEC() और SEC_TO_TIME() का उपयोग करके TIME डेटाटाइप पंक्तियों का योग करना

MySQL में समय मानों का योग: TIME_TO_SEC() और SEC_TO_TIME()

MySQL सीधे TIME मानों का योग नहीं कर सकता, लेकिन आप उन्हें TIME_TO_SEC() के साथ सेकंड में परिवर्तित कर सकते हैं, योग कर सकते हैं, फिर SEC_TO_TIME() के साथ वापस TIME में परिवर्तित कर सकते हैं।

उदाहरण: समय अवधि का योग

पहले एक समय टेबल बनाते हैं:

mysql> CREATE TABLE DemoTable1442 (
    -> DueTime TIME
    -> );
Query OK, 0 rows affected (0.56 sec)

mysql> INSERT INTO DemoTable1442 VALUES
    -> ('00:08:00'), ('00:04:00'), ('12:55:00');
Query OK, 3 rows affected (0.13 sec)

mysql> SELECT * FROM DemoTable1442;
+----------+
| DueTime  |
+----------+
| 00:08:00 |
| 00:04:00 |
| 12:55:00 |
+----------+
3 rows in set (0.00 sec)

समय योग क्वेरी

mysql> SELECT SEC_TO_TIME(SUM(TIME_TO_SEC(DueTime))) AS TotalTime
    -> FROM DemoTable1442;

परिणाम

+-----------+
| TotalTime |
+-----------+
| 13:07:00  |
+-----------+
1 row in set (0.03 sec)

चरण-दर-चरण गणना

DueTimeTIME_TO_SEC()
00:08:00480 सेकंड
00:04:00240 सेकंड
12:55:0046,500 सेकंड
कुल47,220 सेकंड

SEC_TO_TIME(47220) = 13 घंटे, 7 मिनट, 0 सेकंड = 13:07:00

महत्वपूर्ण विचार

  • 24 घंटे से अधिक: SEC_TO_TIME() 24 घंटे से अधिक मानों को संभालता है (उदाहरण: 25:00:00)
  • NULL मान: SUM() NULL को अनदेखा करता है, लेकिन TIME_TO_SEC(NULL) NULL लौटाता है
  • VARCHAR समय: यदि समय VARCHAR में संग्रहीत है, तो पहले CAST करें: TIME_TO_SEC(CAST(time_str AS TIME))

व्यावहारिक उपयोग के मामले

  • कुल कार्य घंटे की गणना
  • मीडिया प्लेलिस्ट अवधि जोड़ना
  • प्रक्रिया निष्पादन समय जोड़ना
  • शिफ्ट शेड्यूल कुल
  1. - MySQL क्वेरी का वास्तविक एक्जीक्यूशन टाइम कैसे मापें?

    PROFILING चालू करके क्वेरी टाइम मापें। स्टेप्स SET PROFILING = 1; क्वेरी चलाएं SHOW PROFILES; उदाहरण SET PROFILING = 1; SELECT * FROM MilliSecondDemo; SHOW PROFILES; +----------+------------+------------------------------+ | Query_ID | Duration | Query | +----------+----

  1. - MySQL में वर्तमान दिनांक/समय कैसे डालें

    MySQL में वर्तमान दिनांक/समय डालने के लिए, now() फ़ंक्शन का उपयोग करें। आइए अब एक उदाहरण देखते हैं। सबसे पहले, हम एक टेबल बनाएंगे। टेबल बनाने के लिए CREATE कमांड का उपयोग किया जाता है। ); Query OK, 0 rows affected (1.14 sec) insert कमांड और now() की मदद से वर्तमान दिनांक/समय डालने का सिंटैक्स।

  1. MySQL से अंतिम 10 रो कैसे चुनें? MySQL से अंतिम 10 रो कैसे चुनें?

    MySQL से अंतिम 10 रो चुनने के लिए, हम SELECT स्टेटमेंट और LIMIT कॉन्सेप्ट के साथ सबक्वेरी का उपयोग कर सकते हैं। निम्न एक उदाहरण है। टेबल बनाना। mysql> create table Last10RecordsDemo -> ( -> id int, -> name varchar(100) -> ); Query OK, 0 rows affected (0.75 sec) टेबल में रिकॉर