वेब, डेटाबेस, क्लाउड सेवाओं और बीस्पोक बिजनेस मैनेजमेंट सॉफ्टवेयर में विशेषज्ञता के साथ 20 से अधिक वर्षों के अनुभव के साथ एक बहु-राष्ट्रीय टीम
  • व्यापारिक समाधान
    • सॉफ़्टवेयर
    • रोबोटिक प्रक्रिया स्वचालन
    • डेटाबेस परामर्श सेवाएं
      • डेटा एकीकरण
      • डाटावेयरहाउस सेवाएं
      • पावर बीआई
      • सर्वर अपग्रेड और डीबीए सेवाएं
    • वेब साइट डिजाइन
      • भुगतान द्वार
      • लोगो डिजाइन
      • वेब स्थानीयकरण और अनुवाद
      • वेब साइट अनुकूलन
      • वेबसाइट सुरक्षा
      • तकनीकी उपकरण
    • क्लाउड समाधान
      • अमेज़न वेब सेवाएँ
      • Google क्लाउड सेवाएं
      • माइक्रोसॉफ्ट ऐज़ुर
    • माइक्रोसॉफ्ट ऑफिस
    • सामाजिक मीडिया
  • अकादमी
    • हमारा परीक्षण वातावरण
    • डेटाबेस डिजाइन सीखना
      • मूल बातें
      • SQL सर्वर Pivot-Unpivot का उपयोग करना
      • SQL सर्वर डेटा
      • SQL सर्वर फ़ंक्शंस का उपयोग करना
      • एसक्यूएल सर्वर 2008 रखरखाव योजनाएँ
      • एसक्यूएल सर्वर तिथियों का उपयोग करना
      • ओपन क्वेरी प्राप्त करें
    • वेबसाइट डिजाइन सीखना
      • Ousia सामग्री प्रबंधन प्रणाली का निर्माण
      • ASP-NET
      • CSS
      • जावास्क्रिप्ट का उपयोग करना
    • क्लाउड और आईटी सेवाएं सीखना
      • टास्क शेड्यूलर त्रुटि 2147943645
      • एसएसएल का अनुरोध करना और ओपनएसएसएल सरल चरणों में पीएफएक्स फ़ाइल बनाना
    • सामाजिक मीडिया का उपयोग
      • Google समीक्षा के लिए पूछना
      • फेसबुक अकाउंट को पर्सनल से बिजनेस में बदलना
      • सोशल मीडिया छवि आकार
      • सोशल मीडिया छवियाँ सेट करने के लिए मेटा डेटा का उपयोग करना
      • सोशल मीडिया प्रयासों पर ध्यान केंद्रित करने का स्थान चुनना
  • हमारे बारे में
    • ब्लॉग
      • Google कोर अपडेट जनवरी 2020
      • अपनी वेबसाइट के लिए सामग्री का चुनाव कैसे करें विज्ञापन पत्रक
      • इंटरनेट पर वेबसाइटों के बारे में सबसे कष्टप्रद बातें
      • एक प्रवेश स्तर की गेमिंग मशीन का निर्माण
      • ऑनलाइन घोटाले को रोकना
      • गिग इकॉनमी के स्किमर्स
      • मुफ्त वेक्टर ग्राफिक्स के लिए शीर्ष 5 वेबसाइटें
      • गर्म मिर्च इंटरनेट बंद
    • करियर
      • अनुवादक अंग्रेज़ी-जापानी
      • अनुवादक अंग्रेज़ी-तुर्की
      • अनुवादक अंग्रेज़ी-पुर्तगाली
      • अनुवादक अंग्रेज़ी-स्पेनिश
    • टीम
      • अली अल अमीन
      • ऐसे हुरो
      • एड्रियन आनंदन
      • गेविन क्लेटन
      • चेस्टर कॉपरपॉट
      • सुनील कुमार
      • सूर्य मुक्कमल
      • साई गंगू
    • नियामक
    • पोर्टफोलियो
čeština (CS)Deutsch (DE)English (EN-GB)English (EN-US)Español (ES)Français (FR)हिंदी (HI)italiano (IT)日本語 (JA)polski (PL)Português (PT)русский (RU)Türk (TR)中国的 (ZH)

महीने के विशिष्ट दिन को वापस करने का कार्य

SQL सर्वर 2008, महीने का विशिष्ट दिन लौटाने का कार्य
SQL सर्वर दिनांक फ़ंक्शंस का उपयोग करना

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

फ़ंक्शन को केवल तीन इनपुट की आवश्यकता होती है, जिस महीने में आप रुचि रखते हैं, प्रकार और संख्या।

यह उसी तरह की जानकारी का उपयोग करता है जैसे Microsoft मासिक कार्य शेड्यूल के लिए करता है।

अधिक: SQL सर्वर लचीला दिनांक कार्य और कैलेंडर तालिका

SQL

CREATE FUNCTION dbo.GetMonthDay(@Month DATETIME,@Type INT, @Counter INT) RETURNS DATETIME AS BEGINSET @Month = CONVERT(DATE,DATEADD(DAY,1-DATEPART(DAY,@Month),@Month))DECLARE @CurDate DATETIME=@Month,@Date DATETIME,@Matches INT=0,@TempDate DATETIMEWHILE @CurDateIF (SELECT (CASE @Type WHEN 1 THEN (CASE WHEN DATEPART(WeekDay,@CurDate)=1 THEN 1 ELSE 0 END)WHEN 2 THEN(CASE WHEN DATEPART(WeekDay,@CurDate)=2 THEN 1 ELSE 0 END)WHEN 3 THEN(CASE WHEN DATEPART(WeekDay,@CurDate)=3 THEN 1 ELSE 0 END)WHEN 4 THEN(CASE WHEN DATEPART(WeekDay,@CurDate)=4 THEN 1 ELSE 0 END)WHEN 5 THEN(CASE WHEN DATEPART(WeekDay,@CurDate)=5 THEN 1 ELSE 0 END)WHEN 6 THEN(CASE WHEN DATEPART(WeekDay,@CurDate)=6 THEN 1 ELSE 0 END)WHEN 7 THEN(CASE WHEN DATEPART(WeekDay,@CurDate)=7 THEN 1 ELSE 0 END)WHEN 8 THEN(CASE WHEN DATEPART(WeekDay,@CurDate) IN (1,2,3,4,5,6,7) THEN 1 ELSE 0 END)WHEN 9 THEN(CASE WHEN DATEPART(WeekDay,@CurDate) IN (2,3,4,5,6) THEN 1 ELSE 0 END)WHEN 10 THEN (CASE WHEN DATEPART(WeekDay,@CurDate) IN (1,7) THEN 1 ELSE 0 END)ELSE 0 END))=1 BEGINSET @Matches = @Matches+1SET @TempDate = @CurDateENDIF @Matches=@Counter AND @Counter<32 BEGINSET @Date=@TempDateENDSET @CurDate=DATEADD(DAY,1,@CurDate)ENDRETURN ISNULL(@Date,@TempDate)ENDGO

यह क्या करता है

हमारे पास जो मान हैं वे sysschedules तालिका के समान हैं लेकिन मैं उन्हें यहां सूचीबद्ध करूंगा;

@टाइप

  • 1=रविवार
  • 2=सोमवार
  • 3=मंगलवार
  • 4=बुधवार
  • 5=गुरुवार
  • 6=शुक्रवार
  • 7=शनिवार
  • 8=किसी भी दिन काउंटर तक या महीने के अंतिम दिन
  • 9=कोई भी कार्यदिवस काउंटर तक या महीने के अंतिम दिन तक
  • 10=किसी भी शनिवार या रविवार को काउंटर या महीने की आखिरी घटना तक

@विरोध करना

  • 1=1प्रथम
  • 2=दूसरा
  • 3=3
  • 4=4थ
  • 32=अंतिम (ये थोड़े अलग हैं)

इसके निम्नलिखित चरण हैं;

  • इनपुट तिथि को महीने के पहले दिन पर सेट करें
  • महीने के दौरान हमारे लूप के लिए चर घोषित करें
  • प्रत्येक तिथि के माध्यम से लूप करें और यदि कोई मैच है तो मैच की संख्या अपडेट करें, और अंतिम मैच आयोजित करने के लिए एक अस्थायी तिथि अपडेट करें
  • यदि मैच हमारे काउंटर के बराबर हैं, और काउंटर 5 (5 = अंतिम दिन) से कम है, तो हमारी वापसी तिथि को अस्थायी तिथि के रूप में सेट करें, यह तब लूप से बाहर निकल जाएगा क्योंकि तिथि अब शून्य नहीं है।
  • हमारी वर्तमान तिथि में एक जोड़ें और फिर से हमारी जांच करें।
  • हमारी तिथि लौटाएं, या यदि अस्थायी तारीख को शून्य कर दें जो कि हमारा अंतिम मैच था।

नीचे उपयोग में इसका एक उदाहरण है। यह फरवरी माह के प्रत्येक रविवार को चलेगा।

संग्रहीत प्रक्रिया के कुछ हिस्सों को चलाने के लिए या नहीं, यह निर्धारित करने के लिए आप इसे आईएफ क्लॉज में उपयोग कर सकते हैं।

Testing

SELECT Utilities.dbo.GetMonthDay('2020-02-11',1,1) --2020-02-02 00:00:00.000SELECT Utilities.dbo.GetMonthDay('2020-02-11',1,2) --2020-02-09 00:00:00.000SELECT Utilities.dbo.GetMonthDay('2020-02-11',1,3) --2020-02-16 00:00:00.000SELECT Utilities.dbo.GetMonthDay('2020-02-11',1,4) --2020-02-23 00:00:00.000SELECT Utilities.dbo.GetMonthDay('2020-02-11',1,32)--2020-02-23 00:00:00.000IF Utilities.dbo.GetMonthDay('2020-02-11',1,32)='2020-02-23' BEGINSELECT 'Run your code'END

अग्रिम पठन

मुझे आशा है कि यह आपके लिए उपयोगी हो सकता है, या यह आपको अन्य प्रक्रियाओं के लिए एक विचार देता है।

यदि आपको छुट्टियों के साथ गणना करने की आवश्यकता है तो आपको एक कैलेंडर तालिका की आवश्यकता होगी, और आप नीचे दिए गए लिंक पर एक महान उदाहरण देख सकते हैं।

अधिक: लचीले विकल्पों के साथ SQL सर्वर फ़ंक्शन में कार्य दिवसों को आज तक जोड़ें

Author

Helpful?

Please note, this commenting system is still in final testing.
Copyright Claytabase Ltd 2020

Registered in England and Wales 08985867

RSSLoginLink हमसे-संपर्क-करेंकूकी नीतिसाइटमैप

Social Media

facebook.com/Claytabaseinstagram.com/claytabase/twitter.com/Claytabaselinkedin.com/company/claytabase-ltd

Get in Touch

+442392064871info@claytabase.comClaytabase Ltd, Unit 3d, Rink Road Industrial Estate, PO33 2LT, United Kingdom
इस साइट की सेटिंग्स सभी कुकीज़ को अनुमति देने के लिए सेट हैं इन्हें हमारी कुकी नीति और सेटिंग पृष्ठ पर बदला जा सकता है। इस साइट का उपयोग जारी रखने के द्वारा आप कुकीज़ के उपयोग से सहमत हैं।
Ousia Logo
Logout
Ousia CMS Loader