ASP+ACCESS查询出上一周的所有记录的SQL语句

来源:百度知道 编辑:UC知道 时间:2024/07/04 02:25:27
网站是ASP+ACCESS的,表名是萆art 按字段now(时间)来查询..我想把上一个星期,上一个月的记录查询出来.试了好几次没成功,这里是不是要用到内置方法.我不会期个,请帮忙写出SQL语句来,很急呀...谢谢,,弄好还加分
lazy67的我试了,不错,可是第二个,,周一到周日的,查询出来好象没有记录哦.不知道是不是我库里没有这个时间.呵呵

上一星期(七天之内):
select * from art where [now] between dateadd("ww",-1,now()) and now()
上一星期(上周一至周日):
select * from art where [now] between dateadd("d",-Weekday(Now())-5,now()) and dateadd("d",-Weekday(Now())+1,now())
上一月(上月的今天至今天):
select * from art where [now] between dateadd("m",-1,now()) and now()
上一月(1号至最后一天):
select * from art where [now] between dateserial(year(now),month(now())-1,1) and dateserial(year(now),month(now()),1-1)

测试一下:
select dateadd("d",-Weekday(Now())-5,now())select dateadd("d",-Weekday(Now())+1,now())
这两个得到的是不是上周一和上周日的日期,如果是,那就是你的表里没有符合条件的数据。

SELECT [art].*
FROM art
WHERE now()-[art].[now]<7 //1个月的话此处为30
ORDER BY [art].[now];

在ACCESS数据库中,日期时间的比较操作符主要有>= 、<=、=三个,在时间比较时在时间两端要加上 # .要比较上个星期, WHERE 子句写成:dateandtime between ((now()+(Weekday(now)-7))-6) and (now()-7)+Weekday(now()) Weekday函数求星期几的函数.
另外你还可以考虑用