आपको एसक्यूएल 2000 में एक महीने का आखिरी रविवार कैसे मिलेगा?अंतिम रविवार खोजें
उत्तर
SELECT
DATEADD(day,DATEDIFF(day,'19000107',DATEADD(month,DATEDIFF(MONTH,0,GETDATE() /*YourValuehere*/),30))/7*7,'19000107')
संपादित करें: एक सही, अंतिम, काम कर रहे अपने साथी से इस सवाल का जवाब।
पवित्र गाय, इस बदसूरत है, लेकिन यहाँ जाता है:
DECLARE @dtDate DATETIME
SET @dtDate = '2009-11-05'
SELECT DATEADD(dd, -1*(DATEPART(dw, DateAdd(day, -1, DateAdd(month, DateDiff(month, 0, @dtDate)+1, 0)))-1),
DateAdd(day, -1, DateAdd(month, DateDiff(month, 0, @dtDate)+1, 0)))
पहले एक टैली टेबल बनाया। http://www.sqlservercentral.com/articles/T-SQL/62867/ तो .. आप क्या चाहते हैं पाने के
http://www.sqlservercentral.com/Forums/Topic515226-1291-1.aspx
DECLARE @DateStart DATETIME,
@DateEnd DATETIME
SELECT @DateStart = '20080131',
@DateEnd = '20101201'
SELECT DATEADD(wk,DATEDIFF(wk,6,DATEADD(mm,DATEDIFF(mm,-1,DATEADD(mm,t.N-1,@DateStart)),-1)),6)
FROM dbo.Tally t
WHERE t.N <= DATEDIFF(mm,@DateStart,@DateEnd)
DECLARE @LastDateOfMonth smalldatetime
SELECT @LastDateOfMonth = DATEADD(month, DATEDIFF(month, -1, GETDATE()), 0) -1
Select DATEADD(dd,-(CASE WHEN DATEPART(weekday,@LastDateOfMonth) = 1 THEN 0 ELSE DATEPART(weekday,@LastDateOfMonth) - 1 END),@LastDateOfMonth)
एक वैकल्पिक दृष्टिकोण डेटा भंडारण अभ्यास से उधार लिया। दिनांक-आयाम तालिका बनाएं और इसे 10 वर्षों के लिए प्री-लोड करें, या तो।
TABLE dimDate (DateKey, FullDate, Day, Month, Year, DayOfWeek,
DayInEpoch, MonthName, LastDayInMonthIndicator, many more..)
सबसे आसान तरीका भरें dimDate
को Excel के साथ एक दोपहर बिताने और फिर वहाँ से डीबी को आयात करने के लिए है। आधा सभ्य dimDate
तालिका में 50+ कॉलम हैं - जो भी आप किसी तारीख के बारे में जानना चाहते थे।
SELECT max(FullDate)
FROM dimDate
WHERE DayOfWeek = 'Sunday'
AND Month = 11
AND Year = 2009;
अनिवार्य रूप से, सभी की तारीख संबंधित प्रश्नों आसान हो:
इस के साथजगह में, सवाल की तरह कुछ हो जाता है।
select next_day(last_day(sysdate)-7, 'Sunday') from dual
एसक्यूएल 2000 नहीं मूल प्रश्न जैसा – DasDave
select dateadd(day,1-datepart(dw, getdate()), getdate())
अगले रविवार, चाहे कोई भी दिन सप्ताह के पहले दिन है: रिटर्न 2011-01-02 23: 59: 59.000 22 दिसम्बर 2010 को:
select DateADD(ss, -1, DATEADD(week, DATEDIFF(week, 0, getdate()), 14))
मैं इन समाधानों में से कुछ को समझने में कठोर लगता है, इसलिए चरणों को समझाने के लिए चर के साथ मेरा संस्करण यहां है।
ALTER FUNCTION dbo.fn_LastSundayInMonth
(
@StartDate DATETIME
,@RequiredDayOfWeek INT /* 1= Sunday */
)
RETURNS DATETIME
AS
/*
A detailed step by step way to get the answer...
SELECT dbo.fn_LastSundayInMonth(getdate()-31,1)
SELECT dbo.fn_LastSundayInMonth(getdate()-31,2)
SELECT dbo.fn_LastSundayInMonth(getdate()-31,3)
SELECT dbo.fn_LastSundayInMonth(getdate()-31,4)
SELECT dbo.fn_LastSundayInMonth(getdate()-31,5)
SELECT dbo.fn_LastSundayInMonth(getdate()-31,6)
SELECT dbo.fn_LastSundayInMonth(getdate()-31,7)
*/
BEGIN
DECLARE @MonthsSince1900 INTEGER
DECLARE @NextMonth INTEGER
DECLARE @DaysToSubtract INTEGER
DECLARE @FirstDayOfNextMonth DATETIME
DECLARE @LastDayOfMonthDayOfWeek INTEGER
DECLARE @LastDayOfMonth DATETIME
DECLARE @ReturnValue DATETIME
SET @MonthsSince1900=DateDiff(month, 0, @StartDate)
SET @[email protected]+1
SET @FirstDayOfNextMonth = DateAdd(month,@NextMonth, 0)
SET @LastDayOfMonth = DateAdd(day, -1, @FirstDayOfNextMonth)
SET @ReturnValue = @LastDayOfMonth
WHILE DATEPART(dw, @ReturnValue) <> @RequiredDayOfWeek
BEGIN
SET @ReturnValue = DATEADD(DAY,-1, @ReturnValue)
END
RETURN @ReturnValue
END
- 1. ASP.NET में तारीख अक्टूबर के अंतिम रविवार C#
- 2. सोमवार से रविवार
- 3. jQuery - तत्व पर अंतिम श्रेणी खोजें
- 4. जावा में रीगेक्स द्वारा अंतिम सूचकांक खोजें
- 5. महीने के अंतिम सोमवार को कैसे खोजें
- 6. पिछली रविवार की तारीख एल्गोरिदम
- 7. DAYOFWEEK, हर रविवार
- 8. शनिवार और रविवार
- 9. अंतिम दिन, या अंतिम घंटा, या अंतिम मिनट के लिए शीर्ष पर जाने वाले यूआरएल खोजें?
- 10. सी प्रोग में किसी फ़ंक्शन का अंतिम पता कैसे खोजें?
- 11. दिनांक का दिन कैसे खोजें
- 12. पिछले रविवार और जावा में आने वाले रविवार को कैसे प्राप्त करें?
- 13. सोमवार से रविवार तक mysql सप्ताह
- 14. अंतिम अभिव्यक्ति अंतिम/
- 15. खोजें
- 16. खोजें
- 17. खोजें
- 18. अंतिम
- 19. अंतिम
- 20. सी भाषा में वर्तमान दिन कैसे खोजें?
- 21. यह कैसे जांचें कि शनिवार/रविवार है या नहीं?
- 22. रेल पिछले किसी भी दिनांक के संबंध में रविवार
- 23. निर्धारित करें कि दिनांक दिनांक शनिवार या रविवार है जावास्क्रिप्ट
- 24. सप्ताह (अब()) रविवार को शुरू होता है सोमवार
- 25. एक महीने के अंतिम दिनऑफवीक की गणना करें
- 26. php में सप्ताह के निकटतम दिन कैसे खोजें?
- 27. लोग खोजें
- 28. "Usages खोजें"
- 29. अंतिम संदेश या अंतिम सीवीएस प्रतिबद्ध
- 30. अंतिम श्रेणी में गैर-अंतिम विधियां
अधिकांश गैर-यूएस-अंग्रेज़ी प्रतिष्ठानों में विफल रहता है ... – gbn