怎么用sql查询昨天,今天,明天和本周的记录

 我来答
仁昌爱娱乐
高粉答主

2020-01-16 · 专注关心娱乐
仁昌爱娱乐
采纳数:760 获赞数:459767

向TA提问 私信TA
展开全部

工具/材料:Management Studio。 

1、首先在桌面上,点击“Management Studio”图标。 

2、之后在该界面中,点击左上角“新建查询”选项。 

3、接着在该界面中,输入昨天,今天,明天和本周的记录的sql语句“select * from test2 where time = DATEADD( day,-1, convert(varchar(10),getdate(),120) ); select * from test2 where time= DATEADD( day,0, convert(varchar(10),getdate(),120) ); select * from test2 where time> DATEADD( day,-6, convert(varchar(10),getdate(),120) );”。 

4、然后在该界面中,点击左上方“执行”按钮。 

5、最后在该界面中,显示昨天,今天,明天和本周的记录成功。

hy1397471
2017-06-15 · 知道合伙人软件行家
hy1397471
知道合伙人软件行家
采纳数:4714 获赞数:17152
15年数据库维护及数据库应用系统开发经验,从事零售业、服务业及财务管理类系统开发与维护。

向TA提问 私信TA
展开全部

sql查询昨天,今天,明天和本周记录的方法

一、昨天,今天,明天和本周在SQL的处理中都是一个时间段,比如昨天指的就是昨天的:0点0分0秒到23点59分59秒。

二、例如表格:ygsrb 

三、查询昨天,今天,明天和本周的记录方法

1、查询今天的记录:

其中getdate()是系统当前的时间,因为它包含是小时、分钟等,所以先使用convert()函数从getdate()返回的时间截取日期部分。

①、convert(char(10),getdate(),120):返回当前时间的日期部分“2017-06-15”

②、convert(datetime,convert(char(10),getdate(),120)+' 00:00:00',120):把拼接好的时间 “2017-06-15 00:00:00”转换成datetime 数据类型。

2、查询昨天的记录:

与查询今天记录的语句不同的是,把getdate()换成了dateadd(dd,-1,getdate())

①、dateadd(dd,-1,getdate()):使用了dateadd函数,把当前的时间减一天。函数的参数DD指计算单位是天。

3、查询明天的记录:

明天和昨天刚好相反,昨天是今天的时间减一天,明天就是今天的时间加一天

dateadd(dd,1,getdate())

4、查询本周的的记录:

本周即所在周的周日到周六,那么就需要要获取周日和周六的时间。

①datepart(weekday,getdate()):使用datepart函数获取当前时间是周几。

比如当前是周四返回 5,因为周日是1,那么今天的时间减4天就是周日,即:dateadd(dd,- datepart(weekday,getdate()) + 1,getdate())

②周六则是7-5 = 2,今天的时间加两天,即:dateadd(dd,7 - datepart(weekday,getdate()),getdate())

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
javapache
2015-01-12 · TA获得超过208个赞
知道小有建树答主
回答量:125
采纳率:0%
帮助的人:148万
展开全部
SQL查询今天的记录:
datediff(day,[Datetime],getdate())=0 把Datetime换为你的相应字段;

SQL查询昨天的记录:
datediff(day,[Datetime],getdate())=1 把Datetime换为你的相应字段,getdate()-Datetime即为时间差。

本月记录:
SELECT * FROM 表 WHERE datediff(month,[dateadd],getdate())=0

本周记录:
SELECT * FROM 表 WHERE datediff(week,[dateadd],getdate())=0

本日记录:
SELECT * FROM 表 WHERE datediff(day,[dateadd],getdate())=0

一天
select * from T_news where datediff(day,addtime,getdate())=0

三天
select * from T_news where datediff(day,addtime,getdate())<= 2 and datediff(day,addtime,getdate())>= 0

一周
select * from T_news WHERE (DATEPART(wk, addtime) = DATEPART(wk, GETDATE())) AND (DATEPART(yy, addtime) = DATEPART(yy, GETDATE()))
注意:此时不能用 datediff 差值为7,因为,datediff只表示间隔数

一月
select * from T_news WHERE (DATEPART(yy, addtime) = DATEPART(yy, GETDATE())) AND (DATEPART(mm, addtime) = DATEPART(mm, GETDATE()))

一季度
select * from T_news where DATEPART(qq, addtime) = DATEPART(qq, GETDATE()) and DATEPART(yy, addtime) = DATEPART(yy, GETDATE())
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
chricen
2017-03-09
知道答主
回答量:17
采纳率:0%
帮助的人:6.1万
展开全部

一些自己的笔记分享给大家

查询当前这周的数据 
SELECT name,submittime FROM enterprise WHERE YEARWEEK(date_format(submittime,'%Y-%m-%d')) = YEARWEEK(now()); 

查询上周的数据 
SELECT name,submittime FROM enterprise WHERE YEARWEEK(date_format(submittime,'%Y-%m-%d')) = YEARWEEK(now())-1; 

查询当前月份的数据 
select name,submittime from enterprise where date_format(submittime,'%Y-%m')=date_format(now(),'%Y-%m') 

查询距离当前现在6个月的数据 
select name,submittime from enterprise where submittime between date_sub(now(),interval 6 month) and now(); 

查询上个月的数据 
select name,submittime from enterprise where date_format(submittime,'%Y-%m')=date_format(DATE_SUB(curdate(), INTERVAL 1 MONTH),'%Y-%m') 

select * from `user` where DATE_FORMAT(pudate,'%Y%m') = DATE_FORMAT(CURDATE(),'%Y%m') ; 

select * from user where WEEKOFYEAR(FROM_UNIXTIME(pudate,'%y-%m-%d')) = WEEKOFYEAR(now()) 

select * 
from user 
where MONTH(FROM_UNIXTIME(pudate,'%y-%m-%d')) = MONTH(now()) 

select * 
from [user] 
where YEAR(FROM_UNIXTIME(pudate,'%y-%m-%d')) = YEAR(now()) 
and MONTH(FROM_UNIXTIME(pudate,'%y-%m-%d')) = MONTH(now()) 

select * 
from [user] 
where pudate between 上月最后一天 
and 下月第一天
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
crazyImin
2017-04-18 · 超过27用户采纳过TA的回答
知道答主
回答量:82
采纳率:0%
帮助的人:26.6万
展开全部
首先,用php获取今天的时间戳:
比如2017-04-18,获取00:00的时间戳和23:59的时间戳
查询语句where用时间字段查询,时间大于00:00时间戳并且小于23:59时间戳的所有记录是今天的。
明天和本周的方法,同上。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式