SQL语句问题!

ling_l 2003-10-21 12:00:48
我想从一张表中统计满足条件的记录数到另一张表上的某个字段,SQL语句应该怎么写!
如把表info中的adminid字段等于表admin中id字段的记录数统计出来,并更新表admin中的对应id的infonum字段,SQL语句应该怎么写?
...全文
37 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
bineon 2003-10-21
  • 打赏
  • 举报
回复
sql="select count(*) from info a inner join admin b on a.adminid=b.id "
set rs = conn.execute (sql)
num = rs(0) 'num is what you need

——————————————————————————————————
www.91asp.cn
有时间到这里找资料找书籍,你会发现asp以及.net很容易!
前提是你努力学习!
summercat 2003-10-21
  • 打赏
  • 举报
回复
sql="select count(*) from info a inner join admin b on a.adminid=b.id "
rs.open sql,conn,1,1
a=rs("0")
sql="update admin set infonum='"&a&"'"
....
ling_l 2003-10-21
  • 打赏
  • 举报
回复
问题已经解决了,不过还是通过循环的,现在速度还可以。
firmgoal(玉明熙)你的语句我还是不能通过,不过还是非常感谢!
给分……
firmgoal 2003-10-21
  • 打赏
  • 举报
回复
不好意思,没看清楚,看看下面的意思对不对:

update admin set admin.infonum = a.infonum from admin,(select count(info.adminid)as infonum,admin.id from info,admin where admin.id=info.adminid group by admin.id ) as a where admin.id = a.id

我在 MSSQLServer 2000上建了个空表试了试,没有语法错误,你试试吧!
ling_l 2003-10-21
  • 打赏
  • 举报
回复
firmgoal(玉明熙):你的方法不行!有没有别的办法
我可以通过循环来完成这个值的统计,可是这样的话,我在admin里有几百条记录,循环的话就有搜索几百次的数据库,几百次的更新,速度就非常非常的慢,请问还有没有别的好办法?
lovehwq21 2003-10-21
  • 打赏
  • 举报
回复
错了,但我也想不出办法
BraveHorse 2003-10-21
  • 打赏
  • 举报
回复
严重同意楼上的!
up!
firmgoal 2003-10-21
  • 打赏
  • 举报
回复
我来把上面的弄成一个语句:
update admin set infonum=(select count(*) from info a inner join admin b on a.adminid=b.id ) where id=...
ling_l 2003-10-21
  • 打赏
  • 举报
回复
这样的话,不是有很多记录的话,还需要通过一个循环才可以实现嘛!有没有办法通过一个语句实现呢…?

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧