Calculate Easter for Any Year

March 13, 2006



>>Script Language and Platform: T-SQL/SQL Server (All versions)
I needed an easy way to add Easter holiday to an events table for a database supporting a web calendar. After a little research, I found an algorithm to calculate the Western traditional date. It works for any year in the Gregorian calendar, any year after 1582.

The function accepts a four digit integer value for the year for which you want the Easter date. Any entry less than 1582 will return an error message, so I suggest using it in conjuction with the IsDate() function.

Example 1:

Select dbo.Year2Easter(2005) as Easter
Example 2:
Declare @Year int,
	@Years int

Set @Year = Year(getdate())
Set @Years = 10
Set @Years = @Years + @Year

While @Year <= @Years
  Begin
  Select @Year As [Year], 
    Easter = Case IsDate
    (dbo.Year2Easter(@Year))
    When 1 Then dbo.Year2Easter(@Year)
    Else Null
  End

Set @Year = @Year + 1
End

Author: Robert Davis


Download Script:
calculate_easter.sql


Disclaimer: We hope that the information on these script pages is valuable to you. Your use of the information contained in these pages, however, is at your sole risk. All information on these pages is provided "as -is", without any warranty, whether express or implied, of its accuracy, completeness, or fitness for a particular purpose... Disclaimer Continued


Back to Database Journal Home








The Network for Technology Professionals

Search:

About Internet.com

Legal Notices, Licensing, Permissions, Privacy Policy.
Advertise | Newsletters | E-mail Offers