在sql server 2008中如何查询本日、本周和本月数据
表名为table列名为col。其中col这一列存的是写入数据时的日期,格式是datetime。请问查询当日、本周和本月内的数据的sql语句怎么写?谢谢您了!...
表名为table 列名为col。其中col这一列存的是写入数据时的日期,格式是datetime。请问查询当日、本周和本月内的数据的sql 语句怎么写?谢谢您了!
展开
2个回答
展开全部
--本日
select * from table where col between cast((convert(varchar(10),getdate(),120) as datetime) and cast((convert(varchar(10),getdate(),120)+' 23:59:59.997' as datetime)
或
SELECT * FROM table WHERE datediff(day,col,getdate())=0
--本周
SELECT * FROM table WHERE datediff(week,col,getdate())=0
--本月
select * from table where col between cast((convert(varchar(7),getdate(),120)+'-1' as datetime) and cast((convert(varchar(7),dateadd(m,1,,getdate()),120)+'-1' as datetime)
来自:求助得到的回答
展开全部
用到 datediff 函数: 返回跨两个指定日期和时间边界数。(获取两个时间之间的是时间段)
--今天
select * from table where datediff(day,col,getdate())=0
--本周
select * from table where datediff(week,col,getdate())=0
--本月
select * from table where datediff(month,col,getdate())=0
--今天
select * from table where datediff(day,col,getdate())=0
--本周
select * from table where datediff(week,col,getdate())=0
--本月
select * from table where datediff(month,col,getdate())=0
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询