There are various techniques to determine whether a given year is a leap year. You can use the below SQL function to check for leap year:
CREATE FUNCTION F_BIT_LEAP_YEAR
(@p_year SMALLINT)
RETURNS BIT
AS
BEGIN
DECLARE @p_leap_date SMALLDATETIME
DECLARE @p_check_day TINYINT
SET @p_leap_date = CONVERT(VARCHAR(4), @p_year) + '0228'
SET @p_check_day = DATEPART(d, DATEADD(d, 1, @p_leap_date))
IF (@p_check_day = 29)
RETURN 1
RETURN 0
END
CREATE FUNCTION F_BIT_LEAP_YEAR
(@p_year SMALLINT)
RETURNS BIT
AS
BEGIN
DECLARE @p_leap_date SMALLDATETIME
DECLARE @p_check_day TINYINT
SET @p_leap_date = CONVERT(VARCHAR(4), @p_year) + '0228'
SET @p_check_day = DATEPART(d, DATEADD(d, 1, @p_leap_date))
IF (@p_check_day = 29)
RETURN 1
RETURN 0
END
No comments:
Post a Comment