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

SQL सर्वर में 'डेटाटाइम' को 'दिनांक' में बदलें (T-SQL उदाहरण)

इस लेख में डेटाटाइम . को रूपांतरित करने के उदाहरण हैं तारीख . के लिए मान SQL सर्वर में मान।

डेटाटाइम . को रूपांतरित करने का स्पष्ट परिणाम तारीख . के लिए मान यह है कि आप समय भाग खो देते हैं। हालांकि, एक फायदा यह है कि आप स्टोरेज साइज को 8 बाइट से घटाकर 3 बाइट कर देते हैं। किसी भी तरह से, आप यह रूपांतरण केवल तभी करेंगे जब आपको समय भाग की आवश्यकता न हो।

डेटाटाइम डेटा प्रकार में दिनांक और समय शामिल होता है, जिसमें 3 अंकों का आंशिक सेकंड भाग होता है। इसकी सटीकता .000, .003, या .007 सेकंड की वृद्धि के लिए गोल है।

हालांकि, तारीख डेटा प्रकार की सटीकता 1 दिन है (और इसमें समय शामिल नहीं है, जैसा कि बताया गया है)।

उदाहरण 1 - निहित रूपांतरण

यहां डेटाटाइम . के बीच निहित रूपांतरण का एक उदाहरण दिया गया है और तारीख .

DECLARE 
  @thedatetime datetime, 
  @thedate date;
SET @thedatetime = '2025-05-21 10:15:30.123';
SET @thedate = @thedatetime;
SELECT 
  @thedatetime AS 'datetime',
  @thedate AS 'date';

परिणाम:

+-------------------------+------------+
| datetime                | date       |
|-------------------------+------------|
| 2025-05-21 10:15:30.123 | 2025-05-21 |
+-------------------------+------------+

यह एक अंतर्निहित रूपांतरण है क्योंकि हम इसे स्पष्ट रूप से परिवर्तित करने के लिए रूपांतरण फ़ंक्शन (जैसे नीचे वाले) का उपयोग नहीं कर रहे हैं। इस मामले में, जब हम डेटाटाइम असाइन करने का प्रयास करते हैं, तो SQL सर्वर पर्दे के पीछे एक अंतर्निहित रूपांतरण करता है। तारीख . के लिए मान चर।

इस उदाहरण में हम देख सकते हैं कि तारीख मान में केवल दिनांक (समय घटक के बिना) शामिल है।

उदाहरण 2 - CAST() का उपयोग करके स्पष्ट रूपांतरण

यहां स्पष्ट रूपांतरण का एक उदाहरण दिया गया है। इस मामले में, मैं CAST() . का उपयोग करता हूं सीधे SELECT . के अंदर काम करता है डेटाटाइम . के बीच स्पष्ट रूप से कनवर्ट करने के लिए कथन और तारीख .

DECLARE @thedatetime datetime;
SET @thedatetime = '2025-05-21 10:15:30.123';
SELECT 
  @thedatetime AS 'datetime',
  CAST(@thedatetime AS date) AS 'date';

परिणाम:

+-------------------------+------------+
| datetime                | date       |
|-------------------------+------------|
| 2025-05-21 10:15:30.123 | 2025-05-21 |
+-------------------------+------------+

उदाहरण 3 - CONVERT() का उपयोग करके स्पष्ट रूपांतरण

यहां CONVERT() . का उपयोग करके स्पष्ट रूपांतरण का एक उदाहरण दिया गया है CAST() के बजाय फ़ंक्शन करें .

DECLARE @thedatetime datetime;
SET @thedatetime = '2025-05-21 10:15:30.123';
SELECT 
  @thedatetime AS 'datetime',
  CONVERT(date, @thedatetime) AS 'date';

परिणाम:

+-------------------------+------------+
| datetime                | date       |
|-------------------------+------------|
| 2025-05-21 10:15:30.123 | 2025-05-21 |
+-------------------------+------------+

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एकाधिक नामस्थानों के साथ SQL सर्वर एक्सएमएल क्वेरी

  2. प्रत्येक आईडी के लिए अधिकतम मूल्य प्राप्त करने के लिए सरल क्वेरी

  3. SQL सर्वर में एक समग्र प्राथमिक कुंजी कैसे बनाएं (T-SQL उदाहरण)

  4. JDBC का उपयोग करके SQL सर्वर LocalDB से कनेक्ट करना

  5. CONCAT () के साथ SQL सर्वर में स्ट्रिंग्स को कैसे संयोजित करें