SQL

2016-01-07 8 views
5

में महीने के लिए 3 अक्षर संक्षेप कैसे प्राप्त करें SQL में 3 अक्षरों में महीने कैसे प्राप्त करें।SQL

एसक्यूएल तालिका डेटा में सम्मिलित किया जाता है:

2016-01-07 09:38:58.310 

मैं नीचे की तरह 3 अक्षरों में केवल महीने परिणाम की जरूरत है:

Jan 
+2

कौन सा DBMS उपयोग कर रहे हैं? (दिनांक/समय की बात होने पर बहुत सारे डीबीएमएस उत्पाद एएनएसआई एसक्यूएल अनुपालन से बहुत दूर हैं।) – jarlh

+1

एसक्यूएल 2008 और मेरी चुनिंदा क्वेरी इस तरह है: तालिका 10RecentNews ऑर्डर द्वारा दिनांक डीईएससी द्वारा चुनें शीर्ष 10 आईडी, दिनांक, शीर्षक, विवरण @ jarlh – zahed

+2

@zahed - जब लोग टिप्पणियों में प्रश्न पूछते हैं, तो आम तौर पर इसे एक बेहतर प्रश्न बनाने के लिए, और विशेष रूप से पूछे जाने वाले जानकारी को शामिल करने के लिए अपने प्रश्न को संपादित करना एक अच्छा विचार है (जैसे कि marc_s को फिर से टैग करना है प्रश्न, लेकिन हो सकता है कि आप अपनी पूर्ण क्वेरी को शामिल करना चाहें, जो कोड ('{}') के रूप में चिह्नित होने पर भी अच्छा सिंटैक्स हाइलाइटिंग प्राप्त होगा) –

उत्तर

6

इस (मैं आप Sql सर्वर का उपयोग कर रहे संभालने हूँ) की कोशिश करो।

SELECT FORMAT([Date], 'MMM', 'en-US') 

:

Select Convert(char(3), GetDate(), 0) 

आप महीने का पूरा नाम की जरूरत है, तो आप SQL सर्वर या नए प्रयोग कर रहे हैं मान लिया जाये कि

Select Datename(month, GetDate()) 
+0

मेरी चयन क्वेरी इस तरह है: चुनें शीर्ष 10 आईडी, दिनांक, शीर्षक, विवरण से चुनें तिथि डीईएससी द्वारा Table_RecentNews ऑर्डर। @Nitin Varpe – zahed

+1

आपको बस उपर्युक्त फ़ंक्शन का उपयोग करने और अपनी क्वेरी को संशोधित करने की आवश्यकता है। –

+0

मुझे परिणाम की आवश्यकता है .. mmm के रूप में दिनांक .. @Nitin Varpe – zahed

6

प्रयास करने पर आपको FORMAT समारोह का उपयोग कर सकते आवश्यकतानुसार लोकेल को एडाप्टर करें।

जब से तुम एसक्यूएल सर्वर 2008 पर हैं, मैं का उपयोग करेंगे

SELECT LEFT(DATENAME(MONTH, [Date]), 3) 
+3

आप तेजी से थे :) 'चुनें फॉर्मेट (@ डी, 'एमएमएम', 'एन-यूएस'); '[डेमो] (https://data.stackexchange.com/stackoverflow/query/420643) मैं – lad2025

+0

के मामले में लोकेल जोड़ूंगा, मैंने इसे एसक्यूएल में करने की कोशिश की सर्वर 2012 लेकिन 'FORMAT' के रूप में त्रुटि देने के लिए एक मान्यता प्राप्त अंतर्निहित फ़ंक्शन नाम नहीं है। क्यूं कर?? –

+2

@NitinVarpe: आप संभवतः एसएसएमएस 2012 चला रहे हैं, लेकिन ** ** -2011 ** डेटाबेस इंजन के खिलाफ। डेटाबेस ** इंजन ** संस्करण निर्धारण कारक है - आप जिस फ्रंटएंड जीयूआई उपकरण का उपयोग कर रहे हैं उसका संस्करण नहीं है। 'SELECT @@ VERSION' –

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