计算指定年月的最后一天的自定义MYSQL函数(转)

计算指定年月的最后一天的自定义MYSQL函数:


/*
Name : Fun_YiYueDeZuiHouYiTian
Function : 根据传入的格式如“200311”的年月值计算出当月的最后一天
Parameters :
BenYue 本月
Type : Char(6)
Format : "200311"
ReturnValue :
格式如“200310”的年月值
Type : Char(6)
Steps :
Author : Waxdoll Cheung
Date : 2004-04-04
*/

CREATE FUNCTION dbo.Fun_YiYueDeZuiHouYiTian
(
@BenYue CHAR(6)
)
RETURNS CHAR(10)
AS
BEGIN
DECLARE @ReturnValue CHAR(2)
DECLARE @YueFen CHAR(2)
DECLARE @NianFen CHAR(4)

SET @YueFen = RIGHT(@BenYue, 2)
SET @NianFen = LEFT(@BenYue, 4)

IF @YueFen IN ('01', '03', '05', '07', '08', '10', '12')
BEGIN
SET @ReturnValue = '31'
END

IF @YueFen IN ('04', '06', '09', '11')
BEGIN
SET @ReturnValue = '30'
END

IF @YueFen = '02'
BEGIN
IF ((@NianFen % 4 = 0 AND @NianFen % 100 <> 0) OR (@NianFen % 400 = 0))
BEGIN
SET @ReturnValue = '29'
END
ELSE
BEGIN
SET @ReturnValue = '28'
END
END

RETURN @NianFen + '-' + @YueFen + '-' + @ReturnValue
END


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10294527/viewspace-122867/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10294527/viewspace-122867/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值