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

SQL सर्वर (T-SQL) में महीने की संख्या को महीने के नाम में बदलें

आप नीचे दिए गए टी-एसक्यूएल कोड का उपयोग करके एसक्यूएल सर्वर में एक महीने की संख्या को उसके संबंधित नाम में बदल सकते हैं।

यह ऐसे समय के लिए है जब आपके पास वास्तव में पूरी तारीख नहीं होती है - जब आपके पास महीने की संख्या होती है। अगर आप करते हैं तारीख है, तो यहां बताया गया है कि किसी तारीख से महीने का नाम कैसे प्राप्त करें।

उदाहरण

आप DATENAME() . का उपयोग करके महीने का नाम उसकी संगत संख्या से प्राप्त कर सकते हैं DATEADD() . के संयोजन के साथ कार्य करें ।

यहां एक उदाहरण दिया गया है जो महीने 10 (अक्टूबर) का उपयोग करता है:

SELECT DATENAME( 
    month, 
    DATEADD( month , 10, -1 )
    );

परिणाम:

October

कोड की व्याख्या

अगर आप सोच रहे हैं कि -1 क्यों है उपरोक्त कोड में, ऐसा इसलिए है क्योंकि आधार तिथि 1900-01-01 है (ठीक है, 1900-01-01 00:00:00.000 सटीक होने के लिए)।

यदि हम 10 को 01 में जोड़ते हैं, तो हमें 11 मिलता है, जो नवंबर (गलत महीना) है। इसलिए हमें इसे 1 से घटाना होगा।

निम्नलिखित उदाहरण इसे मेरे शब्दों से बेहतर तरीके से स्पष्ट करना चाहिए। यहां विभिन्न DATEADD() हैं तीसरे तर्क के रूप में मैं जो उपयोग करता हूं, उसके आधार पर लौटाए गए मान।

SELECT 
  DATEADD( month, 0, 0 ) AS [Base Date],
  DATEADD( month, 10, 0 ) AS [Add 10],
  DATEADD( month, 10, -1 ) AS [Subtract 1];

परिणाम:

 +-------------------------+-------------------------+-------------------------+
 | Base Date               | Add 10                  | Subtract 1              |
 |-------------------------+-------------------------+-------------------------|
 | 1900-01-01 00:00:00.000 | 1900-11-01 00:00:00.000 | 1900-10-31 00:00:00.000 |
 +-------------------------+-------------------------+-------------------------+ 

तो तीसरा विकल्प हमें सही महीने की संख्या देता है, और फिर यह DATENAME() का उपयोग करने का एक साधारण मामला है इसे महीने के नाम में बदलने के लिए।

एक वैकल्पिक:FORMAT()

अगर आपको DATENAME() पसंद नहीं है फ़ंक्शन, आप इसे FORMAT() . के लिए स्वैप कर सकते हैं इसके बजाय कार्य करें। वही अवधारणा लागू होती है।

SELECT FORMAT( 
    DATEADD( month , 10, -1 ),
    'MMMM'
    );

परिणाम:

October

  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 सर्वर तालिका में पंक्तियों को कैसे सम्मिलित करें GUI - SQL सर्वर / TSQL ट्यूटोरियल भाग 101

  2. VBA कोड प्राथमिक कुंजी के साथ लिंक की गई तालिका को जोड़ने के लिए

  3. SQL सर्वर से डेटाबेस की सूची प्राप्त करें

  4. SQL डेटाबेस में अरबी वर्ण कैसे सम्मिलित करें?

  5. ओरेकल:एसक्यूएल सर्वर के लिए प्रोफाइलर जैसे प्रश्नों का पता लगाने के लिए कोई उपकरण है?