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 वेबसाइट पर उपलब्ध दिनांक/समय शैलियों के बारे में अधिक पढ़ सकते हैं।