मारियाडीबी में, TIMESTAMP()
एक अंतर्निहित दिनांक और समय फ़ंक्शन है जो अपने तर्कों के आधार पर डेटाटाइम मान देता है।
इसका उपयोग एक या दो तर्कों के साथ इस प्रकार किया जा सकता है:
- जब एक तर्क के साथ प्रयोग किया जाता है, तो यह उस तिथि या डेटाटाइम अभिव्यक्ति को डेटाटाइम मान के रूप में लौटाता है।
- जब दो तर्कों के साथ प्रयोग किया जाता है, तो यह पहले (तारीख या डेटाटाइम) अभिव्यक्ति में दूसरा (समय) तर्क जोड़ता है, फिर परिणामी डेटाटाइम मान देता है।
सिंटैक्स
इसका उपयोग निम्नलिखित दो तरीकों से किया जा सकता है:
TIMESTAMP(expr)
TIMESTAMP(expr1,expr2)
जहां expr1
एक दिनांक या डेटाटाइम अभिव्यक्ति है, और expr2
expr1
में जोड़ने के लिए एक टाइम एक्सप्रेशन है ।
उदाहरण
प्रदर्शित करने के लिए यहां एक उदाहरण दिया गया है:
SELECT TIMESTAMP('2030-02-01');
परिणाम:
+-------------------------+ | TIMESTAMP('2030-02-01') | +-------------------------+ | 2030-02-01 00:00:00 | +-------------------------+
डेटाटाइम मान
डेटाटाइम मान पास करने का एक उदाहरण यहां दिया गया है:
SELECT TIMESTAMP('2030-02-01 10:30:45');
परिणाम:
+----------------------------------+ | TIMESTAMP('2030-02-01 10:30:45') | +----------------------------------+ | 2030-02-01 10:30:45 | +----------------------------------+
दूसरा तर्क
यहां एक उदाहरण दिया गया है जो पहले तर्क में दूसरा तर्क जोड़ता है:
SELECT TIMESTAMP('2030-02-01 10:30:45', '02:15:15');
परिणाम:
+----------------------------------------------+ | TIMESTAMP('2030-02-01 10:30:45', '02:15:15') | +----------------------------------------------+ | 2030-02-01 12:46:00 | +----------------------------------------------+
माइक्रोसेकंड
यहां एक उदाहरण दिया गया है जो माइक्रोसेकंड जोड़ता है:
SELECT TIMESTAMP('2030-02-01 10:30:45', '00:00:00.123456');
परिणाम:
+-----------------------------------------------------+ | TIMESTAMP('2030-02-01 10:30:45', '00:00:00.123456') | +-----------------------------------------------------+ | 2030-02-01 10:30:45.123456 | +-----------------------------------------------------+
नकारात्मक समय
नकारात्मक समय मान्य हैं:
उदाहरण:
SELECT TIMESTAMP('2030-02-01 10:30:45', '-09:20:00');
परिणाम:
+-----------------------------------------------+ | TIMESTAMP('2030-02-01 10:30:45', '-09:20:00') | +-----------------------------------------------+ | 2030-02-01 01:10:45 | +-----------------------------------------------+
वर्तमान तिथि
हम NOW()
pass पास कर सकते हैं वर्तमान दिनांक और समय का उपयोग करने के लिए डेटाटाइम तर्क के रूप में:
SELECT
NOW(),
TIMESTAMP(NOW(), '10:30:45');
परिणाम:
+---------------------+------------------------------+ | NOW() | TIMESTAMP(NOW(), '10:30:45') | +---------------------+------------------------------+ | 2021-05-28 09:25:09 | 2021-05-28 19:55:54 | +---------------------+------------------------------+
अमान्य तर्क
अमान्य तर्क पारित होने पर, TIMESTAMP()
रिटर्न null
चेतावनी के साथ:
SELECT TIMESTAMP('Ten Thirty AM');
परिणाम:
+----------------------------+ | TIMESTAMP('Ten Thirty AM') | +----------------------------+ | NULL | +----------------------------+ 1 row in set, 1 warning (0.004 sec)
चेतावनी की जाँच करें:
SHOW WARNINGS;
परिणाम:
+---------+------+---------------------------------------+ | Level | Code | Message | +---------+------+---------------------------------------+ | Warning | 1292 | Incorrect time value: 'Ten Thirty AM' | +---------+------+---------------------------------------+
अनुपलब्ध तर्क
कॉल करना TIMESTAMP()
तर्कों की गलत संख्या के साथ, या कोई तर्क पारित किए बिना, एक त्रुटि उत्पन्न होती है:
SELECT TIMESTAMP();
परिणाम:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')' at line 1पर ')' के पास उपयोग करने के लिए सही सिंटैक्स के लिए अपने मारियाडीबी सर्वर संस्करण से संबंधित मैनुअल की जांच करें।
और दूसरा उदाहरण:
SELECT TIMESTAMP('2020-12-09', '06:30:45', '06:30:45');
परिणाम:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')' at line 1पर ' '06:30:45')' के पास उपयोग करने के लिए सही सिंटैक्स के लिए अपने मारियाडीबी सर्वर संस्करण से संबंधित मैनुअल की जांच करें।