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

CONVERT() दिनांक/समय से SQL सर्वर में स्ट्रिंग उदाहरणों के लिए

CONVERT() फ़ंक्शन आपको डेटा प्रकारों के बीच कनवर्ट करने की अनुमति देता है। यह CAST() के समान है फ़ंक्शन, लेकिन CONVERT() . के लाभों में से एक यह है कि, जब आप किसी दिनांक/समय डेटा प्रकार से एक स्ट्रिंग में कनवर्ट करते हैं, तो आप एक वैकल्पिक तर्क जोड़ सकते हैं जो उस शैली को निर्दिष्ट करता है जिसमें आप वापसी मान चाहते हैं। उदाहरण के लिए, आप इसे dd के रूप में वापस कर सकते हैं .mm.yyyy , yyyy-mm-dd , दिवस सोम yyyy , आदि

इस आलेख में विभिन्न शैलियों के उदाहरण हैं जिन्हें आप CONVERT() का उपयोग करके किसी दिनांक/समय मान को स्ट्रिंग में कनवर्ट करते समय वापस कर सकते हैं SQL सर्वर में कार्य करता है।

मूल उदाहरण

डेटाटाइम . से कनवर्ट करते समय डिफ़ॉल्ट शैली और स्मॉलडेटटाइम डेटा प्रकार 0 है और 100 (ये एक ही शैली का प्रतिनिधित्व करते हैं)। इसलिए, जब आप कोई शैली (तीसरा पैरामीटर) प्रदान नहीं करते हैं, तो इसे इस तरह से स्टाइल किया जाता है:

DECLARE @date datetime = GETDATE();
SELECT
    @date AS Original,
    CONVERT(varchar, @date) AS Converted;

परिणाम:

+-------------------------+---------------------+
| Original                | Converted           |
|-------------------------+---------------------|
| 2018-06-07 03:08:21.997 | Jun  7 2018  3:08AM |
+-------------------------+---------------------+

हालांकि, अगर मूल डेटा प्रकार डेटाटाइम . नहीं है, तो आपको एक अलग परिणाम मिलेगा या स्मॉलडेटटाइम

यदि आपको इसे किसी भिन्न शैली में वापस करने की आवश्यकता है, तो आपको तीसरा तर्क निर्दिष्ट करना होगा।

दो अंकों के वर्षों वाली शैलियां

दो अंकों वाले वर्ष घटक का उपयोग करके शैली निर्दिष्ट करने के लिए आप जिन विभिन्न मानों का उपयोग कर सकते हैं, उनके उदाहरण नीचे दिए गए हैं।

शैलियाँ 1 से 6

DECLARE @date datetime2 = '2018-06-07';
SELECT
    CONVERT(nvarchar(30), @date, 1) AS '1',
    CONVERT(nvarchar(30), @date, 2) AS '2',
    CONVERT(nvarchar(30), @date, 3) AS '3',
    CONVERT(nvarchar(30), @date, 4) AS '4',
    CONVERT(nvarchar(30), @date, 5) AS '5',
    CONVERT(nvarchar(30), @date, 6) AS '6';

परिणाम:

+----------+----------+----------+----------+----------+-----------+
| 1        | 2        | 3        | 4        | 5        | 6         |
|----------+----------+----------+----------+----------+-----------|
| 06/07/18 | 18.06.07 | 07/06/18 | 07.06.18 | 07-06-18 | 07 Jun 18 |
+----------+----------+----------+----------+----------+-----------+

शैलियां 7 से 6

DECLARE @date datetime2 = '2018-06-07';
SELECT
    CONVERT(nvarchar(30), @date, 7) AS '7',
    CONVERT(nvarchar(30), @date, 8) AS '8',
    CONVERT(nvarchar(30), @date, 10) AS '10',
    CONVERT(nvarchar(30), @date, 11) AS '11',
    CONVERT(nvarchar(30), @date, 12) AS '12',
    CONVERT(nvarchar(30), @date, 14) AS '14';

परिणाम:

+------------+----------+----------+----------+--------+------------------+
| 7          | 8        | 10       | 11       | 12     | 14               |
|------------+----------+----------+----------+--------+------------------|
| Jun 07, 18 | 00:00:00 | 06-07-18 | 18/06/07 | 180607 | 00:00:00.0000000 |
+------------+----------+----------+----------+--------+------------------+

चार अंकीय वर्षों वाली शैलियां

नीचे विभिन्न मानों के उदाहरण दिए गए हैं जिनका उपयोग आप चार अंकों वाले वर्ष घटक का उपयोग करके शैली निर्दिष्ट करने के लिए कर सकते हैं।

शैलियाँ 100 से 103

DECLARE @date datetime2 = '2018-06-07 02:35:52.8537677';
SELECT
    CONVERT(nvarchar(30), @date, 100) AS '100',
    CONVERT(nvarchar(30), @date, 101) AS '101',
    CONVERT(nvarchar(30), @date, 102) AS '102',
    CONVERT(nvarchar(30), @date, 103) AS '103';

परिणाम:

+---------------------+------------+------------+------------+
| 100                 | 101        | 102        | 103        |
|---------------------+------------+------------+------------|
| Jun  7 2018  2:35AM | 06/07/2018 | 2018.06.07 | 07/06/2018 |
+---------------------+------------+------------+------------+

शैली 104 से 108

DECLARE @date datetime2 = '2018-06-07 02:35:52.8537677';
SELECT
    CONVERT(nvarchar(30), @date, 104) AS '104',
    CONVERT(nvarchar(30), @date, 105) AS '105',
    CONVERT(nvarchar(30), @date, 106) AS '106',
    CONVERT(nvarchar(30), @date, 107) AS '107',
    CONVERT(nvarchar(30), @date, 108) AS '108';

परिणाम:

+------------+------------+-------------+--------------+----------+
| 104        | 105        | 106         | 107          | 108      |
|------------+------------+-------------+--------------+----------|
| 07.06.2018 | 07-06-2018 | 07 Jun 2018 | Jun 07, 2018 | 02:35:52 |
+------------+------------+-------------+--------------+----------+

शैलियाँ 109 से 112 तक

DECLARE @date datetime2 = '2018-06-07 02:35:52.8537677';
SELECT
    CONVERT(nvarchar(30), @date, 109) AS '109',
    CONVERT(nvarchar(30), @date, 110) AS '110',
    CONVERT(nvarchar(30), @date, 111) AS '111',
    CONVERT(nvarchar(30), @date, 112) AS '112';

परिणाम:

+--------------------------------+------------+------------+----------+
| 109                            | 110        | 111        | 112      |
|--------------------------------+------------+------------+----------|
| Jun  7 2018  2:35:52.8537677AM | 06-07-2018 | 2018/06/07 | 20180607 |
+--------------------------------+------------+------------+----------+

शैलियाँ 113 से 114 तक

DECLARE @date datetime2 = '2018-06-07 02:35:52.8537677';
SELECT
    CONVERT(nvarchar(30), @date, 113) AS '113',
    CONVERT(nvarchar(30), @date, 114) AS '114';

परिणाम:

+------------------------------+------------------+
| 113                          | 114              |
|------------------------------+------------------|
| 07 Jun 2018 02:35:52.8537677 | 02:35:52.8537677 |
+------------------------------+------------------+

शैलियाँ 120 से 127

DECLARE @date datetime2 = '2018-06-07';
SELECT    
    CONVERT(nvarchar(30), @date, 120) AS '120',
    CONVERT(nvarchar(30), @date, 126) AS '126',
    CONVERT(nvarchar(30), @date, 127) AS '127';

परिणाम:

+---------------------+---------------------+---------------------+
| 120                 | 126                 | 127                 |
|---------------------+---------------------+---------------------|
| 2018-06-07 00:00:00 | 2018-06-07T00:00:00 | 2018-06-07T00:00:00 |
+---------------------+---------------------+---------------------+

शैली 130

DECLARE @date datetime2 = '2018-06-07';
SELECT    
    CONVERT(nvarchar(30), @date, 130) AS '130';

परिणाम:

+--------------------------------+
| 130                            |
|--------------------------------|
| 24 رمضان 1439 12:00:00.0000000 |
+--------------------------------+

Microsoft चेतावनी देता है कि यह मान SSMS की डिफ़ॉल्ट यूएस स्थापना पर सही ढंग से प्रस्तुत नहीं होता है।

शैली 131

DECLARE @date datetime2 = '2018-06-07';
SELECT    
    CONVERT(nvarchar(30), @date, 131) AS '131';

परिणाम:

+-------------------------------+
| 131                           |
|-------------------------------|
| 24/09/1439 12:00:00.0000000AM |
+-------------------------------+

आप Microsoft वेबसाइट पर उपलब्ध दिनांक/समय शैलियों के बारे में अधिक पढ़ सकते हैं।


  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 सर्वर डेटाबेस में सभी डिफ़ॉल्ट बाधाओं को कैसे छोड़ें - SQL सर्वर / TSQL ट्यूटोरियल भाग 94

  3. SQL सर्वर VARCHAR/NVARCHAR स्ट्रिंग में लाइन ब्रेक कैसे सम्मिलित करें?

  4. सभी तालिकाओं के लिए SQL सर्वर डेटाबेस में विदेशी कुंजी बाधाओं को कैसे छोड़ें - SQL सर्वर / TSQL ट्यूटोरियल भाग 72

  5. SQL सर्वर में अस्थायी तालिकाओं का परिचय