目录
源数据表
‘ 某公司实行项目制。因为多个项目同时进行,高层管理人员要求各项目组按月分解目标,并在下月初对上月项目计划完成的情况实施考核。为实现阶段目标,某项目组计划对当月剩余天数倒计时,以按时完成进度。用SQL语句得到当前月的判余天数。
解决方案
SELECT DAY(DATEADD('m',1,DATE())-DAY(DATE()))-DAY(DATE()) AS 当前剩余天数
DATEADD+DAY函数的使用
本例通过DATEADD函数及DAY函数得到当前月的剩余天数,分步解析如下。
(DATEADD('m',1,DATE())得到下个月今天的日期。
DAY(DATEADD('m',1,DATE())-DAY(DATE())):下个月今天的日期减去今天的日期得到当前月的天数。
DAY(DATEADD('m',1,DATE())-DAY(DATE()))-DAY(DATE()):当前月的天数减去今天的日期得到当前月的剩余天数。
DATEADD函数返回日期型数据,其语法如下:
DATEADD(interval,number,date)
其中,参数interval为字符串表达式,表示要添加的时间间隔。参数number为数值表达式,表示要添加的间隔数。该参数为正数时,DATEADD函数返回将来的日期,为负数时,DATEADD
函