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

वर्चर (ddmmyyyy) को दिनांक प्रारूप में बदलें

ddmmyyyy मान्य दिनांक प्रारूप नहीं है। आपको पहले उस स्ट्रिंग को किसी ऐसी चीज़ में बनाना होगा जिसे DATE . के रूप में पार्स किया जा सके / DATETIME . सबसे तेज़ तरीका बस SUBSTRING हो सकता है टुकड़ों को mm/dd/yyyy . में प्रारूप। यह सफलतापूर्वक रूपांतरित होता है। लेकिन आपके पास एक VARCHAR(8) है . तो आपको या तो इसे बढ़ाना होगा VARCHAR(10) (या बेहतर अभी तक, बस CHAR(10) ), या परिवर्तित मान रखने के लिए स्थानीय चर घोषित करें।

उदाहरण के लिए:

DECLARE @Date VARCHAR(8); -- input parameter
SET @Date = '25032014';

DECLARE @Date2 CHAR(10);
SET @Date2 = SUBSTRING(@Date, 3, 2)
             + '/' + SUBSTRING(@Date, 1, 2)
             + '/' + SUBSTRING(@Date, 5, 4);

SELECT @Date2, CONVERT(DATE, @Date2);
-- 03/25/2014     2014-03-25

संपादित करें: दरअसल, मुझे थोड़ा आसान तरीका मिला। मैंने इस विधि से शुरुआत की लेकिन महसूस किया कि यह ddmmyyyy . के साथ काम नहीं करता है mmddyyyy . के विपरीत . मैं किसी तरह चूक गया कि dd/mm/yyyy . के लिए एक उपयुक्त दिनांक शैली संख्या थी . तो, आने वाली स्ट्रिंग में बस दो स्लैश जोड़ना और फिर CONVERT . को कॉल करना काम करता है, लेकिन केवल अगर आप 103 . का उपयोग करते हैं "शैली" के रूप में। और पहले समाधान की तरह, इसे या तो आने वाले पैरामीटर को VARCHAR(10) . में बदलना होगा या CHAR(10) VARCHAR(8) . के बजाय , या CHAR(10) . होने के लिए एक स्थानीय चर बनाना ।

DECLARE @Date VARCHAR(8); -- input parameter
SET @Date = '25032014';

DECLARE @Date2 CHAR(10);
SET @Date2 = STUFF(STUFF(@Date, 3, 0, '/'), 6, 0, '/');

SELECT @Date2, CONVERT(DATE, @Date2, 103); -- 103 = dd/mm/yyyy
-- 25/03/2014     2014-03-25

रूपांतरण "शैलियाँ" MSDN पृष्ठ पर CAST और CONVERT




  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 सर्वर की दिनांक, समय और डेटाटाइमऑफ़सेट के लिए समतुल्य C# डेटा प्रकार क्या हैं?

  2. टी-एसक्यूएल:स्ट्रिंग कॉन्सैट के साथ समस्या

  3. SQL सर्वर में मल्टी-स्टेटमेंट टेबल-वैल्यूड फंक्शन्स और इनलाइन टेबल-वैल्यूड फंक्शन्स के बीच अंतर

  4. आप इमेज कॉलम में पिक्चर कैसे स्टोर करते हैं?

  5. SQL सर्वर:अमान्य कॉलम नाम