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

टी-एसक्यूएल में एक तिथि कैसे प्रारूपित करें

समस्या:

आप SQL सर्वर में किसी अन्य प्रारूप में दिनांक मान प्रदर्शित करना चाहते हैं।

उदाहरण:

हमारे डेटाबेस में company कॉलम में डेटा के साथ आईडी (प्राथमिक कुंजी), नाम , और प्रारंभ_दिनांक

<थ>नाम <थ>प्रारंभ_दिनांक
आईडी
1 लिसा बैंक 2019-01-20
2 क्रेडिट वित्तीय संस्थान 2018-03-14
3 विलियम्स होल्डिंग 2019-10-28

प्रत्येक कंपनी के लिए, आइए उनकी प्रारंभ तिथि को एक नए प्रारूप 'YYYY/MM/DD' में बदलें, जहां YYYY 4-अंकीय वर्ष है, MM 2-अंकीय महीना है, और DD 2-अंकीय दिन है।

समाधान 1:

हम CONVERT() . का उपयोग करेंगे समारोह। यहां वह प्रश्न है जो आप लिखेंगे:

SELECT 
  CONVERT(NVARCHAR, start_date, 111 ) AS new_date
FROM company;

ये रहा परिणाम:

<थ>प्रारंभ_दिनांक
नाम
लिसा बैंक 2019/01/20
क्रेडिट वित्तीय संस्थान 2018/03/14
विलियम्स होल्डिंग 2019/10/28

चर्चा:

CONVERT() का उपयोग करें किसी दिए गए कॉलम या एक्सप्रेशन से किसी दिनांक के प्रारूप को बदलने के लिए कार्य करता है।

यह फ़ंक्शन तीन तर्क लेता है:

  1. नया डेटा प्रकार (हमारे उदाहरण में, NVARCHAR)।
  2. एक एक्सप्रेशन या कॉलम नाम जिसमें फॉर्मेट करने की तारीख होती है (हमारे उदाहरण में, start_date कॉलम)।
  3. एक वैकल्पिक शैली कोड, एक पूर्णांक के रूप में। (हमारे उदाहरण में, '111' शैली भागों को अलग करने के लिए स्लैश का उपयोग करके दिनांक प्रदर्शित करती है।)

नीचे दी गई तालिका सबसे लोकप्रिय दिनांक शैली कोड प्रस्तुत करती है:

<थ>विवरण
कोड
101 11/30/2019
102 2019.11.30
103 30/11/2019
104 30.11.2019
105 30-11-2019
110 11-30-2019
111 2019/11/30

प्रारूप शैलियों की एक विस्तृत सूची टी-एसक्यूएल दस्तावेज़ीकरण में पाई जा सकती है।

उपरोक्त क्वेरी ने लिसा बैंक की दिनांक 2019-01-20 के प्रारूप को '2019/01/20' दिनांक वाली स्ट्रिंग में बदल दिया।

समाधान 2:

SQL सर्वर 2012 और बाद में, आप FORMAT() . का उपयोग कर सकते हैं दिनांक/समय स्वरूपों को बदलने के लिए कार्य। वांछित प्रारूप निर्दिष्ट करने के लिए आप नीचे दिए गए वर्णों का उपयोग करते हैं:

<थ>विवरण
पैटर्न
dd दिन 01-31 की सीमा में
एमएम माह 01-12 की सीमा में
वर्ष 2-अंकीय वर्ष
yyyy 4 अंकों का वर्ष
HH 00-23 की सीमा में घंटा
मिमी 00-59 की सीमा में मिनट
ss 00-59 की सीमा में सेकंड

यहाँ वह क्वेरी है जिसे आप FORMAT() का उपयोग करके लिखेंगे:

SELECT 
  FORMAT(start_date, ‘yyyy-MM-dd’ ) AS new_date
FROM company;

पहला तर्क पुन:स्वरूपित करने के लिए डेटाटाइम/दिनांक/समय मान है। दूसरा एक स्ट्रिंग है जिसमें नए प्रारूप का पैटर्न होता है। यह फ़ंक्शन एक NVARCHAR डेटा प्रकार देता है। FORMAT() का उपयोग करें यदि आप SQL Server 2012 या उसके बाद के संस्करण पर काम करते हैं और दिनांक/समय को स्वरूपित दिनांक/समय वाले स्ट्रिंग में कनवर्ट करना चाहते हैं।


  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. इलास्टिसर्च से डेटा कैसे हटाएं

  3. डेटाबेस को पायथन से कैसे कनेक्ट करें

  4. डेटाबेस डिज़ाइन शिक्षकों, पाठों और छात्रों को व्यवस्थित करने में कैसे मदद करता है?

  5. टी-एसक्यूएल में एक स्ट्रिंग से सबस्ट्रिंग कैसे निकालें?