SQL सर्वर निश्चित रूप से 'YYYYMMDD' के रूप में तारों को एक समय-समय पर डाला जा सकता है - अन्य सभी तारों को स्पष्ट रूप से कास्ट किया जाना चाहिए।
संस्करण 1 यूनिट चर का उपयोग करता है: यहाँ दो त्वरित कोड ब्लॉक जो फार्म आप के बारे में बात कर रहे हैं से रूपांतरण करना होगा रहे हैं
BEGIN
DECLARE @input VARCHAR(8), @mon CHAR(2),
@day char(2), @year char(4), @output DATETIME
SET @input = '10022009' --today's date
SELECT @mon = LEFT(@input, 2), @day = SUBSTRING(@input, 3,2), @year = RIGHT(@input,4)
SELECT @output = @[email protected][email protected]
SELECT @output
END
संस्करण 2 इकाई चर का उपयोग नहीं करता है:
BEGIN
DECLARE @input CHAR(8), @output DATETIME
SET @input = '10022009' --today's date
SELECT @output = RIGHT(@input,4) + SUBSTRING(@input, 3,2) + LEFT(@input, 2)
SELECT @output
END
दोनों मामले एसक्यूएल सर्वर की उस अंतर्निहित रूपांतरण करने की क्षमता पर भरोसा करते हैं।
क्या tsql में mySQL जैसे str_to_date फ़ंक्शन है? http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_str-to-date – dnagirl
ओपी mmddyyyy चाहता है; कन्वर्ट का चयन करें (डेटाटाइम, '12312009') - >>> _ संदेश 242, स्तर 16, राज्य 3, रेखा 1 डेटा डेटा प्रकार के डेटा को डेटाटाइम डेटा प्रकार में परिवर्तित करने के परिणामस्वरूप आउट-ऑफ-रेंज डेटाटाइम मान होता है। –