注册 登录
编程论坛 ASP技术论坛

这样的SELECT查询语句怎么写?,

孤独冷雨 发布于 2008-04-07 11:26, 1359 次点击
现在有一张新闻(news)表(access);
表内字段:id(自动编号)  title(新闻标题) type(单位)  content(新闻内容)  times(时间 date()默认)

我怎么能用SELECT语句调出news表中某一个单位,本周发表的新闻数量?
sql="select count(*) from news where type='银行' and **************(后面怎么写?) order by id desc"
9 回复
#2
dhdhzzw2008-04-07 11:43
你这不是已经写出来了吗?
我怎么能用SELECT语句调出news表中某一个单位,本周发表的新闻数量?
sql="select count(*) from news where type='银行' order by id desc"
#3
fuhuijun2008-04-07 13:53
对呀
你 已经些出来了
#4
孤独冷雨2008-04-07 14:15
回复 2# 的帖子
我那个只是"银行"这个单位"所有"发表新闻的数量,我要的是他"本周"发表的数量和"上个月"的发表数量!上面应该有个时间限制啊????

[[it] 本帖最后由 孤独冷雨 于 2008-4-7 14:17 编辑 [/it]]
#5
yms1232008-04-07 16:01
利用DateDiff函数确定本周数据
sql="select count(*) from news where type='银行' and DateDiff(day,times,getdate())<7 order by id desc"
上面是SQL2000的写法Access用
sql="select count(*) from news where type='银行' and DateDiff(day,times,Now())<7 order by id desc"
#6
孤独冷雨2008-04-07 17:15
谢谢老大,搞定了!
#7
tianyu1232008-04-07 18:17
这样写不准确吧!
要的是本周发表的新闻数量,而不是到目前为止,7天之内发表的新闻数量
sql="select count(*) from news where type='银行' and DateDiff(day,times,Now())<7 order by id desc"
#8
madpbpl2008-04-07 18:24
同意楼上的,昨晚也有相同的看法,一时没想出合适的解法
#9
tianyu1232008-04-07 19:08
应该这样写比较准确
dim week,w,t
week=weekday(now())
select case week
case 1:
w=6
case 2:
w=0
case 3:
w=1
case 4:
w=2
case 5:
w=3
case 6:
w=4
case 7:
w=5
end select
t=dateadd("d",-w,date())
t=t&" 00:00:00"
sql="select count(*) from news where type='银行' and times between #"& t &"# and now() order by id desc"
#10
yms1232008-04-07 19:35
sql="select count(*) from news where type='银行' and DateDiff(week,times,Now())<=0 order by id desc"
可以这样写DateDiff直接由week参数来比较两个时间相差几周。
1