2013-05-23 4 views
14

में कनवर्ट करें मैं एसएसआईएस के लिए नया हूं और मैं "डीडी-एमएम-वाईवाईवाई" स्ट्रिंग करने के लिए GetDate() को कन्वर्ट करने की कोशिश कर रहा हूं। यह अभिव्यक्ति मैं अब तक का निर्माण किया है है:एसएसआईएस अभिव्यक्ति: स्ट्रिंग को

(DT_WSTR, 8) DAY(GETDATE()) + "-" + (DT_WSTR, 8) (MONTH(GETDATE()) - 1) + "-" + (DT_WSTR, 8) YEAR(GETDATE()) 

समस्या मुझे मिल गया है महीना() है धर्मान्तरित महीना "23-4-2013" एक ही चरित्र है जब मैं यह डबल चरित्र में चाहते हैं, दिन के समान ही। मैं इसे दोहरे चरित्र में कैसे बना सकता हूं इससे कोई फर्क नहीं पड़ता कि यह कितना महीना है?

उत्तर

31

लघु उद्योगों के लिए आप के साथ जा सकते हैं:

RIGHT("0" + (DT_STR, 2, 1252) DATEPART("dd" , GETDATE()), 2) + "-" + RIGHT("0" + (DT_STR, 2, 1252) DATEPART("mm" , GETDATE()), 2) + "-" + (DT_STR, 4, 1252) DATEPART("yy" , GETDATE()) 

अभिव्यक्ति बिल्डर स्क्रीन:

Expression builder screen

+0

धन्यवाद, महान काम करता है! मैं इससे एक महीने कैसे घटा सकता हूं? – resolver101

+2

कोई समस्या नहीं, एक महीने घटाने के लिए, अभिव्यक्ति के सभी 'GETDATE()' भागों को 'DATEADD (" mm ", - 1, GETDATE()) में बदलें, बाकी सब कुछ छोड़कर। –

+0

मैं अभिव्यक्ति कैसे बना सकता हूं ताकि यह "mm-dd-yy" + ".CSV" हो? – Si8

0

मेरी तरह, आप एक अभिव्यक्ति के भीतर GETDATE() का उपयोग करें और उचित रूप में अनुचित है करने के लिए कोशिश कर रहे हैं, तो आवश्यकता (एसएसआईएस/एसएसडीटी मेरे पास प्रगति पर बहुत अधिक काम करता है, न कि पॉलिश की पेशकश), वैध तिथि के रूप में SQL सर्वर में डालने की तिथि (टाइप = datetime), तो मैं und काम करने के लिए इस अभिव्यक्ति:

@[User::someVar] = (DT_WSTR,4)YEAR(GETDATE()) + "-" + RIGHT("0" + (DT_WSTR,2)MONTH(GETDATE()), 2) + "-" + RIGHT("0" + (DT_WSTR,2)DAY(GETDATE()), 2) + " " + RIGHT("0" + (DT_WSTR,2)DATEPART("hh", GETDATE()), 2) + ":" + RIGHT("0" + (DT_WSTR,2)DATEPART("mi", GETDATE()), 2) + ":" + RIGHT("0" + (DT_WSTR,2)DATEPART("ss", GETDATE()), 2) 

मैंने पाया इस कोड स्निपेट HERE

संबंधित मुद्दे