Високосный год в SQL.

По григорианскому календарю год считается високосным если он кратен 4, но при этом не кратен 100, либо кратен 400. С учетом этого можем написать функцию для определения “високосности” года.

create function [dbo].[isLeapYear]
(@date date)
returns bit
as
begin
return (case
			when year(@date) % 4 = 0 and year(@date) % 100 != 0
			then 1
			when year(@date) % 400 = 0
			then 1
			else 0
		end)
end

Функция может принимать любую дату в качестве аргумента и возвращает единицу если год високосный, в противном случае – 0:

Пример использования функции isLeapYear

Оставить комментарий

Обязательные поля *

Вы можете использовать следующие HTML теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>