मेरे पास एक संग्रहीत प्रक्रिया है जिसे एक महीने int (1-12) और एक वर्ष int के रूप में स्वीकार करना है। उन दो मूल्यों को देखते हुए, मुझे उस महीने की तिथि सीमा निर्धारित करना है। तो मुझे उस महीने के पहले दिन का प्रतिनिधित्व करने के लिए एक डेटाटाइम वैरिएबल की आवश्यकता है, और उस महीने के आखिरी दिन का प्रतिनिधित्व करने के लिए एक और डेटाटाइम चर। क्या यह जानकारी प्राप्त करने का एक आसान तरीका है?एसक्यूएल सर्वर 2005 किसी भी वर्ष किसी भी महीने के लिए पहली और अंतिम तिथि प्राप्त करें
उत्तर
DECLARE @Month int
DECLARE @Year int
set @Month = 2
set @Year = 2004
select DATEADD(month,@Month-1,DATEADD(year,@Year-1900,0)) /*First*/
select DATEADD(day,-1,DATEADD(month,@Month,DATEADD(year,@Year-1900,0))) /*Last*/
लेकिन महीने के आखिरी दिन के लिए आपको समय घटक के रूप में क्या चाहिए? अपने datetimes आधी रात के अलावा अन्य समय घटक है, तो आप अच्छी तरह से बंद बेहतर हो सकता है जैसे
WHERE COL >= DATEADD(month,@Month-1,DATEADD(year,@Year-1900,0))
AND COL < DATEADD(month,@Month,DATEADD(year,@Year-1900,0))
कुछ कर रही इस तरह से अपने कोड यदि आप अंत में एसक्यूएल सर्वर 2008 और अधिक से अधिक परिशुद्धता datetime डेटाटाइप्स में माइग्रेट काम करना जारी रखेंगे में।
महीने का पहला दिन: माह केSELECT DATEADD(mm, DATEDIFF(mm, 0, GETDATE()), 0)
अंतिम दिन:SELECT DATEADD(ms, -3, DATEADD(mm, DATEDIFF(m, 0, GETDATE()) + 1, 0))
स्थानापन्न GETDATE के लिए दिनांक समय चर मूल्य()।
मुझे बहुत पहले this very handy page से मिला है, जिसमें "तारीख के सोमवार" और "महीने के पहले सोमवार" जैसे अन्य दिनांक गणनाओं का पूरा समूह है।
यह काम किया। हालांकि मैंने एक अलग जवाब चुना क्योंकि मैंने इसके वाक्यविन्यास को प्राथमिकता दी थी। आपके द्वारा लिंक किया गया पृष्ठ जानकारी का एक बड़ा स्रोत है। धन्यवाद। – Ristogod
DECLARE @Month int;
DECLARE @Year int;
DECLARE @FirstDayOfMonth DateTime;
DECLARE @LastDayOfMonth DateTime;
SET @Month = 3
SET @Year = 2010
SET @FirstDayOfMonth = CONVERT(datetime, CAST(@Month as varchar) + '/01/' + CAST(@Year as varchar));
SET @LastDayOfMonth = DATEADD(month, 1, CONVERT(datetime, CAST(@Month as varchar)+ '/01/' + CAST(@Year as varchar))) - 1;
यह काम किया। हालांकि मैंने एक अलग उत्तर चुना क्योंकि मैंने इसके वाक्यविन्यास और कनवर्ट करने के गैर-उपयोग को प्राथमिकता दी थी। धन्यवाद। – Ristogod
DECLARE @Month INTEGER
DECLARE @Year INTEGER
SET @Month = 10
SET @Year = 2010
DECLARE @FirstDayOfMonth DATETIME
DECLARE @LastDayOfMonth DATETIME
SET @FirstDayOfMonth = Str(@Year) + RIGHT('0' + Str(@Month), 2) + '01'
SET @LastDayOfMonth = DATEADD(dd, -1, DATEADD(mm, 1, @FirstDayOfMOnth))
SELECT @FirstDayOfMonth, @LastDayOfMonth
यह काम किया। हालांकि मैंने एक अलग उत्तर चुना क्योंकि मैंने इसके वाक्यविन्यास और अधिकार के गैर-उपयोग को प्राथमिकता दी थी। धन्यवाद। – Ristogod
इस प्रयास करें:
Declare @month int, @year int;
Declare @first DateTime, @last DateTime;
Set @month=10;
Set @year=2010;
Set @first=CAST(CAST(@year AS varchar) + '-' + CAST(@month AS varchar) + '-' + '1' AS DATETIME);
Set @last=DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,@first)+1,0));
SELECT @first,@last;
यह काम किया। हालांकि मैंने एक अलग उत्तर चुना क्योंकि मैंने इसके वाक्यविन्यास और कास्टिंग के गैर-उपयोग को प्राथमिकता दी थी। धन्यवाद। – Ristogod
select [FirstDay Of The Month] as Text ,convert(varchar,dateadd(d,-(day(getdate()-1)),getdate()),106) 'Date'
union all
select [LastDay Of The Month], convert(varchar,dateadd(d,-day(getdate()),dateadd(m,1,getdate())),106)
वर्तमान माह की अंतिम तिथि:
select dateadd(dd,-day(dateadd(mm,1,getdate())),dateadd(mm,1,getdate()))
वर्तमान महीने 1 दिनांक:
select dateadd(dd,-day(getdate())+1,getdate())
DECLARE @Month int = 3, @Year int = 2016
DECLARE @StartDate DATETIME
DECLARE @EndDate DATETIME
-- First date of month
SET @StartDate = DATEADD(MONTH, @Month-1, DATEADD(YEAR, @Year-1900, 0));
-- Last date of month
SET @EndDate = DATEADD(SS, -1, DATEADD(MONTH, @Month, DATEADD(YEAR, @Year-1900, 0)))
यह समय सारिणी के साथ पहली तारीख और अंतिम तिथि लौटाएगा।
- 1. किसी दिए गए महीने और वर्ष के लिए php
- 2. पिछले महीने के पहले और अंतिम तिथि प्राप्त
- 3. किसी निश्चित वर्ष/माह
- 4. किसी विशिष्ट महीने/वर्ष के महीने का पहला दिन प्राप्त करना
- 5. किसी भी
- 6. किसी भी शाखा में किसी भी शाखा में मौजूद किसी भी शाखा को सूचीबद्ध करें
- 7. किसी भी सूची ([_]) और कुछ भी (_)
- 8. किसी भी()
- 9. वर्ष और महीने के साथ तिथि वस्तु केवल
- 10. .net SqlConnection किसी भी {{
- 11. MySQL किसी भी और सभी
- 12. जावास्क्रिप्ट, समय और तिथि: किसी दिए गए मिलीसेकंद समय के वर्तमान मिनट, घंटे, दिन, सप्ताह, महीने, वर्ष प्राप्त करना
- 13. माइक्रोसॉफ्ट एसक्यूएल सर्वर 2005
- 14. एसक्यूएल सर्वर: केवल पिछले वर्ष के लिए डेटा प्राप्त करें
- 15. किसी भी उपलब्ध असेंबली
- 16. डब्ल्यूपीएफ - किसी भी समय
- 17. किसी भी डोमेन से मेल प्राप्त करने के लिए मेल सर्वर कॉन्फ़िगर करें
- 18. किसी भी SQL तालिका
- 19. किसी भी ईबीएस
- 20. किसी भी आईपी पते
- 21. बढ़ावा :: किसी भी और टेम्पलेट्स
- 22. किसी भी ट्रांसफॉर्म
- 23. MYSQL: मैं महीने, दिन और वर्ष
- 24. किसी भी मुद्रा स्ट्रिंग को
- 25. किसी भी सर्वर अनुरोध के बिना एक फ़ाइल डाउनलोड ट्रिगर
- 26. एसक्यूएल सर्वर 2005
- 27. किसी तालिका में किसी भी इंडेक्स के बिना प्राथमिक कुंजी?
- 28. सी #। किसी भी स्ट्रिंग
- 29. किसी भी DOM तत्व
- 30. एसक्यूएल सर्वर डेटाबेस को किसी भी बैकअप के बिना किसी अन्य सर्वर से कॉपी करने के लिए
धन्यवाद। यह काम किया। मैंने यह जवाब पसंद किया क्योंकि यह सबसे साफ प्रतीत होता है। – Ristogod