闰年是指每年2月29日多出一天的年份,这是为了弥补地球绕太阳公转的实际时间与公历年中规定的时间差异。Sql中判断闰年有多种 ,下面介绍两种通用的 :
一:使用 CASE WHEN 语句
sql
SELECT
CASE
WHEN year % 400 = 0 THEN '闰年'
WHEN year % 100 = 0 THEN '平年'
WHEN year % 4 = 0 THEN '闰年'
ELSE '平年'
END AS is_leap_year
FROM
table_name
WHERE
year = 2023;
此 使用 CASE WHEN 语句根据给定的年份值判断是否为闰年。根据闰年的定义,如果年份能被 400 整除,则为闰年;如果年份能被 100 整除,则不是闰年;如果年份能被 4 整除,则为闰年。
二:使用 MOD 函数
sql
SELECT
CASE
WHEN MOD(year, 400) = 0 THEN '闰年'
WHEN MOD(year, 100) = 0 THEN '平年'
WHEN MOD(year, 4) = 0 THEN '闰年'
ELSE '平年'
END AS is_leap_year
FROM
table_name
WHERE
year = 2023;
此 使用 MOD 函数判断是否为闰年。MOD 函数返回两个数字相除的余数,如果年份对 400、100 或 4 的余数为 0,则分别为闰年、平年或闰年。
这两种 都可以有效地判断 Sql 中的闰年,开发人员可以根据具体需要选择适合自己的 。