【转】MSSQL获取各种时间

sql得到当前系统时间得 日期部分
CONVERT(varchar(10),getDate(),120)



求得到"昨天,今天"日期函数的
SQL


所属分类:MS-SQL Server 基础类


----------------------------------------------------------------------

Convert(Datetime,GetDate(),2)

GetDate()
得到今天日期
2007-03-26 16:14:12.187

1.
现在我需要得到只是日期部分,时间部分不要,SQL怎么写?


2.
求以下日期
SQL:

昨天 


明天


最近七天


随后七天


上周


本周


下周


上月


本月


下月


请高手帮忙。谢谢


----------------------------------------------------------------------

1.
现在我需要得到只是日期部分,时间部分不要,SQL怎么写?


select convert(varchar(10),getdate(),120)

--------------------------------------------------------

--1.

Select Convert(Varchar(10), GetDate(), 120)

Select Convert(Varchar(10), GetDate(), 121)

--------------------------------------------------------

2.
求以下日期
SQL:

昨天 


select convert(varchar(10),getdate() - 1,120)

明天


select convert(varchar(10),getdate() + 1,120)

最近七天


select * from tb where
时间字段
>= convert(varchar(10),getdate() - 7,120)

随后七天


select * from tb where
时间字段 <= convert(varchar(10),getdate() + 7,120) and 时间字段 >= 时间字段


--------------------------------------------------------

convert
dateadd函数结合使用就可以了。


--------------------------------------------------------

datediff(day,时间列
,getdate())

--------------------------------------------------------

上月


select * from tb where month(
时间字段
) = month(getdate()) - 1

本月


select * from tb where month(
时间字段
) = month(getdate())

下月


select * from tb where month(
时间字段
) = month(getdate()) + 1

--------------------------------------------------------

--2

--
如果是在表中查詢


--
昨天 


Select * From TableName Where DateDiff(dd, DateTimCol, GetDate()) = 1

--
明天


Select * From TableName Where DateDiff(dd, GetDate(), DateTimCol) = 1

--
最近七天


Select * From TableName Where DateDiff(dd, DateTimCol, GetDate()) <= 7

--
随后七天


Select * From TableName Where DateDiff(dd, GetDate(), DateTimCol) <= 7

--
上周


Select * From TableName Where DateDiff(wk, DateTimCol, GetDate()) = 1

--
本周


Select * From TableName Where DateDiff(wk, DateTimCol, GetDate()) = 0

--
下周


Select * From TableName Where DateDiff(wk, GetDate(), DateTimCol ) = 1

--
上月


Select * From TableName Where DateDiff(mm, DateTimCol, GetDate()) = 1

--
本月


Select * From TableName Where DateDiff(mm, DateTimCol, GetDate()) = 0

--
下月


Select * From TableName Where DateDiff(mm, GetDate(), DateTimCol ) = 1

--------------------------------------------------------

本周


select * from tb where datediff(week ,
时间字段
,getdate()) = 0

上周


select * from tb where datediff(week ,
时间字段
,getdate()) = 1

下周


select * from tb where datediff(week ,
时间字段
,getdate()) = -1

--------------------------------------------------------

1.
现在我需要得到只是日期部分,时间部分不要,SQL怎么写?


select convert(varchar(10),getdate(),120)

2.
求以下日期
SQL:

昨天 


select convert(varchar(10),getdate() - 1,120)

明天


select convert(varchar(10),getdate() + 1,120)

最近七天


select * from tb where
时间字段
>= convert(varchar(10),getdate() - 7,120)

随后七天


select * from tb where
时间字段 <= convert(varchar(10),getdate() + 7,120) and 时间字段 >= 时间字段


上月


select * from tb where month(
时间字段
) = month(getdate()) - 1

本月


select * from tb where month(
时间字段
) = month(getdate())

下月


select * from tb where month(
时间字段
) = month(getdate()) + 1

本周


select * from tb where datediff(week ,
时间字段
,getdate()) = 0

上周


select * from tb where datediff(week ,
时间字段
,getdate()) = 1

下周


select * from tb where datediff(week ,
时间字段
,getdate()) = -1


--------------------------------------------------------

昨天:
dateadd(day,-1,getdate())

明天:
dateadd(day,1,getdate())

上月:
month(dateadd(month, -1, getdate()))

本月:
month(getdate())

下月:month(dateadd(month, 1, getdate()))

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值