⑴ 使用sql语句取相关日期(当月天数,当月第一天,当月最后一天,本年最后一天,当月第一个星期)
当月天数
selectday(dateadd(ms,-3,DATEADD(m,DATEDIFF(m,0,getdate())+1,0)))
当月第一天
selectdateadd(d,-day(getdate())+1,getdate())
当月最后一天
selectdateadd(d,-day(getdate()),dateadd(m,1,getdate()))
本年最后一天
selectdateadd(d,-day(getdate()),dateadd(m,12,getdate()))
当月第一个星期一
SELECTDATEADD(wk,DATEDIFF(wk,'',DATEADD(dd,6-DAY(getdate()),getdate())),'')
⑵ sql server 怎么获取指定月的天数
一、新建SQL查询测试
登录SQL Server2008,新建一个查询窗口,输入:select 1,执行,若输出1,则数据库检测正常。如图:
二、SQL获取当前日期
在查询窗口中输入:Select getdate()并选中,单击执行或按F5,检测当地时间是否准确。如图:
注意:选中单条执行操作是却别与其他查询。
三、SQL获取当前月份的天数
从步骤二中,检测到时间正确,当前为11月,那当前月的天数应该是30天;
输入:SELECT 32-DAY(getdate()+32-DAY(getdate())) ,选中并执行,查看输出结果。如图:
四、SQL获取当前月的最后一天
这种方法可以准确的看到当前月份是11月,最后一天是11月30日;
输入:select datediff(mm,0,getdate()),选中,执行,查看输出结果,如图:
五、获取当前月第一天日期
输入查询语句:select dateadd(mm,datediff(mm,0,getdate()),0),选中,执行,查看输出结果。如图:
六、获取下月第一天的日期
输入SQL查询:select dateadd(mm,datediff(mm,0,getdate())+1,0),选中,执行,查看输出结果。如图:
七、获取本月最后一天的日
输入SQL查询:select day(dateadd(mm,datediff(mm,0,getdate())+1,0)-1),选中,执行,查看结果。如图:
八、获取指定年份指定月份的天数
输入SQL查询语句:
declare @年月 varchar(6) set @年月= '201502' --查询2015年2月有多少天 select day(dateadd(month,1,@年月+ '01 ')-1)
选中,执行,查看结果是不是为28?如图:
⑶ sql语句根据年月获取该月有几天
--获得当月天数
select
day(dateadd(mm,1,getdate())-day(getdate()))
as
本月天数
;
select
getdate()
as
当前日期;
select
day(getdate())
as
目前第几天;
select
getdate()-day(getdate())
as
上个月最后一天;
--
减去了当前的天数
select
dateadd(mm,1,getdate())-day(getdate())
as
加上一个月;
--
也就是这个月的最后一天
select
day(dateadd(mm,1,getdate())-day(getdate()))
as
获得当月天数;
⑷ 时间函数 本月有多少天 sql
刚才的答案不对,感谢skyfukk的提示。
下面这个应该是对的。找到该月的最后一天,取其天数:
selectdatepart(day,dateadd(month,datediff(month,'1999-12-31',getdate()),'1999-12-31'));
⑸ 数据库中 怎么样使用一句简单的sql取得当月天数
DECLARE @date DATETIME = '2017-04-01'
SELECT DATEDIFF(DAY, @date, DATEADD(MONTH, 1, @date))
⑹ access下用SQL写段获取当月天数的句子,是在ACCESS2001下,网上找了几个,没有通过
SELECT day(DateSerial(Year(Date()),Month(Date())+1,1)-1) AS 当月天数;
DateSerial(Year(Date()),Month(Date())+1,1)-1 表示当月最后一天的日期
⑺ SQL写一个存储过程或者是查询语句,返回本月的天数
select datediff(day,convert(varchar(10),getdate(),120),convert (varchar(10),dateadd(month,-1,getdate()),120))
这个语句可以用用 我测试没有找到问题 ,你看有问题没
日期 我用 getdate()获取的
⑻ sql 怎么查询当前月份的所有天数
select
*
from
表
where
datediff(day,日期段,getdate())<=15
上面这个是查询15天内的信息
⑼ sqlserver用sql语句怎么返回一个月所有的天数。
可用如下sql语句:
selectconvert(varchar(10),dateadd(DAY,t2.number,t1.day),120)dayfrom
(select'2015-07'+'-01'day)t1,
(selectnumberfromMASTER..spt_valuesWHERETYPE='P'ANDnumber>=0andnumber<=31)t2
whereconvert(varchar(10),dateadd(DAY,t2.number,t1.day),120)like'2015-07%'
说明:要查询某年某月,只许将语句中的2015-07替换即可。
结果截图: