sql获取月份中的天数代码

作者:袖梨 2022-06-29

sql获取月份中的天数代码,下面介绍了几种方法主要是讲了关于天数据获取与2月份特殊月份的处理哦。

CREATE FUNCTION [dbo].[udf_DaysInMonth]
(
@Date DATETIME
)
RETURNS INT
AS
BEGIN
RETURN CASE WHEN MONTH(@Date) IN (1,3,5,7,8,10,12) THEN 31
WHEN MONTH(@Date) IN (4,6,9,11) THEN 30
ELSE [dbo].[DaysOfFebruary](YEAR(@Date))
END
END

SQL SERVER 2005获取当前月的天数
Sql代码 

1.SELECT 32-DAY(getdate()+32-DAY(getdate()))  
SELECT 32-DAY(getdate()+32-DAY(getdate()))

关于2月份的特殊性处理

用户需要传入年份,获取该年份2月份的天数。可以写成一个用户自定义函数

CREATE FUNCTION [dbo].[DaysOfFebruary]
    (
        @Year INT
    )
    RETURNS INT
    AS
    BEGIN
        RETURN CASE WHEN (@Year % 4 = 0 AND @Year % 100 <> 0) OR (@Year % 400  = 0) THEN 29 ELSE 28 END
    END

实例

SELECT [dbo].[DaysOfFebruary](2011)

相关文章

精彩推荐