淘先锋技术网

首页 1 2 3 4 5 6 7

怎样在sqlServer中获取前一天日期

select dateadd(day, -1, getdate()) 减少1天。

DATEADD函数,可以增加/减少指定的小时、分、天、年、月、周等。

select dateadd(day, 2, getdate()) --增加两天。

select dateadd(year, -2, getdate()) --减少两年。

sql server 数据库 问题 select 返回结果 问题?

通过函数转换为日期,减一天就可以了,sqlserver数据库里面函数不太熟, 你可以网上找一下,如果是MySQL可以用strtodate,Oracle可以用todate

sql如何取某年某月的第一天和最后一天

SELECT CAST((LEFT('20093',4)+'-'+SUBSTRING('20093',5,LEN('20093'))+'-'+'01') AS DATETIME)--第一天

SELECT DATEADD(DAY,-1,DATEADD(MONTH,1,CAST((LEFT('20093',4)+'-'+SUBSTRING('20093',5,LEN('20093'))+'-'+'01') AS DATETIME)))--最后一天

原理:第一天肯定是1号拉 ,最后一天是下个月第一天减一天。

本月第一天

SELECT dateadd(ms,-1,DATEADD(mm, DATEDIFF(m,0,getdate()), 0)) as mouthlastdate

下月第一天:

SELECT dateadd(ms,-1,DATEADD(mm, DATEDIFF(m,0,getdate())+1, 0)) as mouthlastdate

下下月第一天:

SELECT dateadd(ms,-1,DATEADD(mm, DATEDIFF(m,0,getdate())+2, 0)) as mouthlastdate

扩展资料

sqlserver 时间格式函数详细

--getdate 获取当前时间

select getdate()

--dateadd 原有时间加: 2013-02-17 13:20:16 此时间加12个月

select dateadd(MONTH,12,'2013-02-17 13:20:16')  --返回:2014-02-17 13:20:16.000  (参数month可以改为 day,year等日期加相应的值)

--datediff 两个时间的差 (后面-前面=返回值)

select datediff(day,'2013-02-01','2013-02-18')   --返回:17  (参数day可以改为 month,year等日期加相应的值)

--datepart 获取日期的某个部分整数

select DATEPART(month, '2013-2-17')  --返回 2    (参数month可以改为 day,year等日期加相应的值)

--datename 获取指定部位的字符串

select datename(weekday, '2013-2-17')  --返回 星期日 (参数weekday可以改为 day,year等日期加相应的值)

--day(), month(),year() 获取指定部位的字符串

select day('2013-2-15') --返回15

在SQLserver中如何获得两个日期相减的天数

[email protected],@time2 datetime

[email protected]='2016-11-24'

[email protected]='2015-11-11'

select DATEDIFF(day,@time1,@time2) as [day],DATEDIFF(week,@time1,@time2) as [week],datediff(year,@time1,@time2) as [year]

datediff函数,第一个是时间单位,例如按天算差距,或者按周算,

后面两个就是要比较的时间参数。

sql查询中日期加减的问题

他们说的那个dateadd 不是oracle的函数。是sqlserver 的,你要前一天的

可以

SELECT SYSDATE-1 FROM DUAL 直接减一就是默认减一天。就算是1号 也会变成上个月的最后一天