Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

SQL सर्वर में SYSUTCDATETIME () बनाम GETUTCDATE ():क्या अंतर है?

SYSUTCDATETIME() और GETUTCDATE() SQL सर्वर में उपयोग के लिए दो T-SQL दिनांक/समय फ़ंक्शन उपलब्ध हैं। ये फ़ंक्शन उस कंप्यूटर का दिनांक और समय लौटाते हैं जिस पर SQL सर्वर का इंस्टेंस चल रहा है। दोनों फ़ंक्शन दिनांक और समय को UTC समय (समन्वित यूनिवर्सल टाइम) के रूप में लौटाते हैं।

तो, दोनों कार्य एक ही काम करते हैं। लगभग।

यहां बताया गया है कि ये दोनों कार्य कैसे भिन्न हैं:

  • GETUTCDATE() डेटाटाइम . के रूप में अपना मान लौटाता है मूल्य।
  • SYSUTCDATETIME() datetime2 . के रूप में अपना मान लौटाता है मूल्य।

इसका मतलब है कि SYSUTCDATETIME() अधिक सेकंड सटीक प्रदान करता है। डेटाटाइम2 डेटा प्रकार की रेंज भी डेटाटाइम . से बड़ी होती है ।

उदाहरण

प्रत्येक फ़ंक्शन द्वारा लौटाए गए मान को प्रदर्शित करने के लिए यहां एक उदाहरण दिया गया है:

SELECT 
    GETUTCDATE() AS GETUTCDATE,
    SYSUTCDATETIME() AS SYSUTCDATETIME;

परिणाम:

+-------------------------+-----------------------------+
| GETUTCDATE              | SYSUTCDATETIME              |
|-------------------------+-----------------------------|
| 2018-06-13 11:04:55.237 | 2018-06-13 11:04:55.2396676 |
+-------------------------+-----------------------------+

तो यह SYSDATETIME() . के बीच के अंतर के समान है और GETDATE()

मुझे किसका उपयोग करना चाहिए?

Microsoft अनुशंसा करता है कि हम datetime2 . का उपयोग करें हमारे दिनांक/समय मूल्यों के साथ। यह डेटा प्रकार SQL मानक के साथ संरेखित होता है, और डेटाटाइम . से अधिक पोर्टेबल है ।

इसलिए, SYSUTCDATETIME() का उपयोग करें जब तक आपके पास न करने का कोई विशेष कारण न हो।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. वर्तमान लेनदेन स्तर कैसे खोजें?

  2. SQL सर्वर 2017 में डेटा डालें

  3. SSMS का उपयोग करके SQL सर्वर एजेंट जॉब बनाएँ

  4. एसक्यूएल में बिना समय के तारीख का चयन कैसे करें

  5. SQL सर्वर में LEN () क्या है?