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
  Select @Year As [Year], 
    Easter = Case IsDate
    When 1 Then dbo.Year2Easter(@Year)
    Else Null

Set @Year = @Year + 1

Author: Robert Davis

Download Script:

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



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