上一星期(七天之内):
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)
在ACCESS数据库中,日期时间的比较操作符主要有>= 、<=、=三个!但不能直接把比较时间用这些操作符相连!为了区分时间类型和其它类型,ACCESS中在时间比较时在时间两端要加上#!例如,要查询2007-1-1日到2007-7-2日之间的信息,SQL语句可以写成:
select distinct fromSelect * form table where datefield >=#2007-1-1# and datefield <=#2007-7-2#
在asp程序中对应得SQL串为:
exsql="select * form table where datefield >= # 2007-1-1 # and datefield<=# 2007-7-2 # "
如果把查询的时间换成一个其他页面传来的变量的话,SQL串对应修改为:
exsql="select * from table where datefield>=#" &Begindate& "# and datefield<= #" &Enddate& "#" ,其中变量Begindate和Enddate分别是查询的起始时间和结束时间。
在网上还到了一些相关的文章,我也一并附在后面,希望能给需要的朋友有些启示和帮助:
列出某一天, 上一星期的数据:
SELECT distinct dateandtime FROM ctdate_by_query_date WHERE dateandtime between ((#2006-5-15#+(Weekday(2006-5-15)-7))-6) and (#2006-5-15#-7)+Weekday(2006-5-15)
sql="SELECT distinct dateandtime FROM ctarticle WHERE dateandtime between ((#"&date&"#+(Weekday("&date&")"&norp&"7))-6) and (#"&date&"#"&norp&"7)+Weekday("&date&")"
查询一天, 所隶属星期所有天数的数据:
SELECT * FROM ctdate_by_query_date WHERE dateandtime between ((#2006-5-15#+Weekday(2006-5-15))-6) and #2006-5-15#+Weekday(2006-5-15)
查询一个时间段 SELECT * FROM ctdate_by_query_date WHERE dateandtime between #2006-5-1# and #2006-5-30#
列出不同年份的年份, 并且不要相同:
select distinct year(dateandtime) from ctarticle
结果如: Expr1000 2000 2003 2004 2005 2006
列出某一天, 上一年的第一条记录:
SELECT top 1 dateandtime FROM ctarticle where year(dateandtime)=(2006)-1
sql="SELECT top 1 dateandtime FROM ctarticle where year(dateandtime)=(year(#"&date&"#))"&norp
列出某一年的数据:
sql="select * from ctdate_by_query_date where year(dateandtime)="&year(rqqdt_)&" order by dateandtime desc" 查上一月中的第一条记录:
SELECT top 1 dateandtime FROM ctarticle where year(dateandtime)=year(#2006-5-28#) and month(dateandtime)=month(#2006-5-28#)-1
列出某一月的数据:
sql="select * from ctdate_by_query_date where year(dateandtime)="&year(rqqdt_)&" and month(dateandtime)="&month(rqqdt_)&" order by dateandtime desc
"
列出某一日的数据:
sql="select * from ctdate_by_query_date where dateandtime=#"&rqqdt_&"# order by a.articleid desc"
列出当天的数据:
ql="select * from ctdate_by_query_date where dateandtime=date() order by a.articleid desc"
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论