SYSDATETIME()
फ़ंक्शन वर्तमान दिनांक और समय को datetime2(7) . के रूप में लौटाता है मूल्य। यह मान उस कंप्यूटर के ऑपरेटिंग सिस्टम से लिया गया है जिस पर SQL सर्वर का इंस्टेंस चल रहा है।
यह लेख SYSDATETIME()
. के उदाहरण प्रदान करता है फ़ंक्शन, जिसमें आप अपनी रुचि के मूल्य को वापस करने के लिए अन्य कार्यों के साथ इसका उपयोग कैसे कर सकते हैं।
सिंटैक्स
सबसे पहले, यहाँ सिंटैक्स है:
SYSDATETIME ( )
तो यह फ़ंक्शन वास्तव में किसी भी तर्क को स्वीकार नहीं करता है। आप इसे बिना किसी तर्क के बस कहते हैं।
उदाहरण
यहां SELECT
. का इस्तेमाल करने का एक बुनियादी उदाहरण दिया गया है SYSDATETIME()
. से वर्तमान दिनांक और समय वापस करने के लिए कथन :
SELECT SYSDATETIME() AS Result;
परिणाम:
+-----------------------------+ | Result | |-----------------------------| | 2018-06-15 23:09:13.5852199 | +-----------------------------+
तो जैसा कि बताया गया है, यह एक datetime2(7) . देता है मूल्य। डेटाटाइम2 डेटा प्रकार की दिनांक सीमा बड़ी होती है और डेटाटाइम . की तुलना में डिफ़ॉल्ट भिन्नात्मक सटीकता अधिक होती है डेटा प्रकार (जो डेटा प्रकार है GETDATE()
रिटर्न - देखें SYSDATETIME() बनाम GETDATE():क्या अंतर है?)।
तारीख का एक भाग निकालें
यदि आप केवल वापसी मूल्य का एक हिस्सा चाहते हैं, तो आप DATEPART()
. का उपयोग कर सकते हैं दिनांक/समय के केवल उस भाग को वापस करने के लिए जिसमें आप रुचि रखते हैं।
उदाहरण:
SELECT DATEPART(month, SYSDATETIME()) AS Result;
परिणाम:
+----------+ | Result | |----------| | 6 | +----------+
कभी-कभी SQL सर्वर में समान परिणाम प्राप्त करने के एक से अधिक तरीके होते हैं। यहां MONTH()
. का उपयोग करते हुए एक और उदाहरण दिया गया है समारोह:
SELECT MONTH(SYSDATETIME()) AS Result;
परिणाम:
+----------+ | Result | |----------| | 6 | +----------+
उन दोनों कार्यों ने चालू माह लौटा दिया। लेकिन उन्होंने उन्हें महीने की संख्या का प्रतिनिधित्व करने वाले पूर्णांक के रूप में लौटा दिया।
अगर आप महीने का नाम चाहते हैं इसके बजाय लौटा, आप DATENAME()
use का उपयोग कर सकते हैं :
SELECT DATENAME(month, SYSDATETIME()) AS Result;
परिणाम:
+----------+ | Result | |----------| | June | +----------+
दिनांक प्रारूपित करें
आप आवश्यकतानुसार तिथि को प्रारूपित करने के लिए अन्य टी-एसक्यूएल कार्यों का भी उपयोग कर सकते हैं।
यहां FORMAT()
. का उपयोग करने का एक उदाहरण दिया गया है परिणाम स्वरूपित करने के लिए कार्य:
SELECT FORMAT(SYSDATETIME(), 'd', 'en-US') AS 'd, en-US', FORMAT(SYSDATETIME(), 'd', 'en-gb') AS 'd, en-gb', FORMAT(SYSDATETIME(), 'D', 'en-US') AS 'D, en-US', FORMAT(SYSDATETIME(), 'D', 'en-gb') AS 'D, en-gb';
परिणाम:
+------------+------------+-----------------------+--------------+ | d, en-US | d, en-gb | D, en-US | D, en-gb | |------------+------------+-----------------------+--------------| | 6/15/2018 | 15/06/2018 | Friday, June 15, 2018 | 15 June 2018 | +------------+------------+-----------------------+--------------+
SQL सर्वर में दिनांक और समय को कैसे प्रारूपित करें पर अधिक उदाहरण।
मूल्य बढ़ाना और अंतर खोजना
आप DATEDIFF()
. जैसे कार्यों का उपयोग कर सकते हैं वर्तमान तिथि और अन्य तिथि के बीच अंतर को वापस करने के लिए।
यहां DATEADD()
का उपयोग करने का एक उदाहरण दिया गया है वर्तमान तिथि में एक महीना जोड़ने के लिए, फिर दिनों में अंतर ज्ञात करना:
DECLARE @date1 datetime2 = SYSDATETIME(); DECLARE @date2 datetime2 = DATEADD(month, 1, SYSDATETIME()); SELECT DATEDIFF(day, @date1, @date2) AS Result;
परिणाम:
+----------+ | Result | |----------| | 30 | +----------+