मारियाडीबी में, MICROSECOND()
एक अंतर्निहित दिनांक और समय फ़ंक्शन है जो किसी दिए गए समय अभिव्यक्ति के माइक्रोसेकंड भाग को लौटाता है।
यह एक तर्क को स्वीकार करता है, जिस समय से आप माइक्रोसेकंड निकालना चाहते हैं।
सेकंड 0
. श्रेणी में एक संख्या के रूप में लौटाए जाते हैं करने के लिए 999999
.
सिंटैक्स
वाक्य रचना इस प्रकार है:
MICROSECOND(time)
जहां time
माइक्रोसेकंड प्राप्त करने के लिए समय अभिव्यक्ति है।
उदाहरण
यहां एक उदाहरण दिया गया है:
SELECT MICROSECOND('10:30:45.123456');
परिणाम:
+--------------------------------+| माइक्रोसेकंड ('10:30:45.123456') |+--------------------------------+| 123456 |+--------------------------------+
निम्नलिखित समय अभिव्यक्ति में स्पष्ट रूप से माइक्रोसेकंड शामिल नहीं हैं:
SELECT MICROSECOND('10:30:45');
परिणाम:
+--------------------------+| माइक्रोसेकंड ('10:30:45') |+--------------------------+| 0 |+--------------------------+
तो परिणाम 0
. है ।
डेटाटाइम मान
यह डेटाटाइम मानों के साथ भी काम करता है:
SELECT MICROSECOND('2030-02-01 10:30:45.123456');
परिणाम:
+-------------------------------------------+| माइक्रोसेकंड ('2030-02-01 10:30:45.123456') |+------------------------------------- ----------+| 123456 |+-------------------------------------------+
दिनांक मान
बिना समय के डेट पास करना 0
, एक चेतावनी के साथ।
उदाहरण:
SELECT MICROSECOND('2025-10-31');
परिणाम:
+-------------------------------------+| माइक्रोसेकंड ('2025-10-31') |+-------------------------------+| 0 |+--------------------------+1 पंक्ति सेट में, 1 चेतावनी (0.001 सेकंड)
हम निम्नलिखित कोड चलाकर चेतावनी देख सकते हैं:
SHOW WARNINGS;
परिणाम:
+------+---------- -----------------+| स्तर | कोड | संदेश |+------------+----------+---------------------------- ----------------+| चेतावनी | 1292 | छोटा किया गया गलत समय मान:'2025-10-31' |+------+------------------- ---------------------------+
वर्तमान तिथि
हम NOW()
pass पास कर सकते हैं वर्तमान समय का उपयोग करने के लिए डेटाटाइम तर्क के रूप में:
SELECT
NOW(6),
MICROSECOND(NOW(6));
परिणाम:
+----------------------------+---------------------------- ----+| अब(6) | माइक्रोसेकंड (अब(6)) |+----------------------------+--------------- ---------+| 2021-05-16 14:41:09.098168 | 98168 |+----------------------------+---------------------------- ---+
इस मामले में मैंने निर्दिष्ट किया है कि NOW()
6
. की भिन्नात्मक सटीकता लौटानी चाहिए (जो इसे माइक्रोसेकंड लौटाता है)।
यहाँ यह फिर से कम सटीकता के साथ है:
SELECT
NOW(3),
MICROSECOND(NOW(3));
परिणाम:
+--------------------------+--------------------- -+| अब(3) | माइक्रोसेकंड (अब(3)) |+--------------------------+--------------- ------+| 2021-05-16 14:42:35.831 | 831000 |+---------------------------+--------------------- +
अमान्य तर्क
अमान्य समय तर्क पारित होने पर, MICROSECOND()
रिटर्न null
:
SELECT MICROSECOND('10:75:00.123456');
परिणाम:
+--------------------------------+| माइक्रोसेकंड ('10:75:00.123456') |+--------------------------------+| नल |+--------------------------------+
अनुपलब्ध तर्क
MICROSECOND()
को कॉल करना तर्कों की गलत संख्या के साथ, या कोई तर्क पारित किए बिना, एक त्रुटि उत्पन्न होती है:
SELECT MICROSECOND();
परिणाम:
ERROR 1064 (42000):आपको अपने SQL सिंटैक्स में त्रुटि है; लाइन 1पर ')' के पास उपयोग करने के लिए सही सिंटैक्स के लिए अपने मारियाडीबी सर्वर संस्करण से संबंधित मैनुअल की जांच करें।
और दूसरा उदाहरण:
SELECT MICROSECOND('10:30:45.123', '06:30:45.123');
परिणाम:
ERROR 1064 (42000):आपको अपने SQL सिंटैक्स में त्रुटि है; लाइन 1 पर ' '06:30:45.123')' के पास उपयोग करने के लिए सही सिंटैक्स के लिए अपने मारियाडीबी सर्वर संस्करण से संबंधित मैनुअल की जांच करें।