select datediff(day,convert(varchar(10),getdate(),120),convert (varchar(10),dateadd(month,-1,getdate()),120))
這個語句可以用用 我測試沒有找到問題 ,你看有問題沒
日期 我用 getdate()獲取的
② 用sql語句怎麼返回一個月所有的天數
相對比較簡單,很好豎吵沒理解x0dx0aselect top(datediff(d,-07-01',-07-31')) identity(int,1,1) as id into #tmp from syscolumnsx0dx0aselect dateadd(d,id,-06-30') from #tmp x0dx0a更碰含滿足你的要余納求的(修改後):x0dx0aselect top(datediff(d,-07-01',-08-01')) identity(int,1,1) as id into #tmp from syscolumnsx0dx0aselect convert(varchar(10),dateadd(d,id,-06-30'),112) from #tmp
③ 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替換即可。
結果截圖:
④ SQL統計天數
SQL統計天數
Create Table T
(
id int,
date datetime,
num int
)
insert into T values(1,'2015-5-2',1)
insert into T values(1,'2015-6-4',2)
insert into T values(1,'2015-6-4',3)
insert into T values(2,'2015-5-2',1)
insert into T values(2,'2015-5-2',2)
insert into T values(2,'2015-10-4',3)
--按id分組,在日期范圍內統計不重復的date
Select id,COUNT(Distinct [Date]) As Cnt
From T
Where [DATE] between '2015-05-01' and '2015-10-01'
Group by id
⑤ sql 計算一個月幾天
可以將年月組成一個月的第一天,再與下個月第一天比較差異天數
declare
@ym
varchar(6)
--年月
select
datediff(day,
cast(@ym+
'01'
as
datetime),dateadd(month,1,cast(@ym+
'01'
as
datetime))
)
⑥ sql 時間 加指定天數
1、登錄SQL Server2008,新建一個查詢窗口,輸入:select 1,執行,若輸出1,則資料庫檢測正常。
7、輸入SQL查詢:select day(dateadd(mm,datediff(mm,0,getdate())+1,0)-1),選中,執行,查看結果。