请问如何将数据分类汇总?

nuclears 2003-10-20 06:05:26
现有两个数据库表:
表a表示分类,表b记录数据。
表a中有两个字段,记录内容为a的id(AID),b的id(BID)。
表b有三各字段,记录内容为b的id(BID),物品的名称(NAME),和物品的数量(NUM)
其中表b的id是系统自动生成并且唯一的,其他的都不是唯一的。
请问,如何根据a的id,获得表b中的物品名称和该物品的总数。
请给出较快些的算法。谢谢
...全文
125 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
mtou 2003-10-21
  • 打赏
  • 举报
回复
笔误:应该是:
select name,sum(Num) from a,b where a.id=b.bid group by name
mtou 2003-10-21
  • 打赏
  • 举报
回复
select name,sum(Num) where a.id=b.bid group by name
lynx1111 2003-10-21
  • 打赏
  • 举报
回复
select max(b.name) as name ,sum(num) as sum from b where b.name=(SELECT b.name FROM a INNER JOIN b ON a.bid = b.bid
where a.aid=1)
caodavid2003 2003-10-21
  • 打赏
  • 举报
回复
如果要把重复的num值加在一起,要一个总数,就不需要表a了,因为每一个a.AID只对应表b中的一条纪录。
lynx1111 2003-10-21
  • 打赏
  • 举报
回复
select max(b.name),sum(num) from b where b.name in (SELECT b.name FROM a INNER JOIN b ON a.bid = b.bid
where a.aid=1)
nuclears 2003-10-21
  • 打赏
  • 举报
回复
这个问题简单的用表连接不行。
因为b中的name字段的值有重复的。
我需要把重复的num值加在一起,要一个总数。

大家再帮帮忙
谢谢了。
prosong 2003-10-20
  • 打赏
  • 举报
回复
使用如下SQL就可以得到你的结果集,在遍历一下就行了,其中问号是参数a的id
Select "NAME", "NUM" from b, a where b.BID=a.BID and a.AID=?

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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