SQL数据库中两个表A,B存放内容不一样,需要关联两表查询数据.
A表中存放的是字段有:名称(name),编号(mediid)机构(forgid)B表中存放的是字段有:价格(price),编号(mediid)机构(forgid)一个名称...
A表中存放的是字段有:名称(name),编号(mediid) 机构(forgid)
B表中存放的是字段有:价格(price ),编号(mediid) 机构(forgid)
一个名称下面可以有多个价格,机构里面也包含多个机构(如:E 和 F)
需求1:现在想查一下:E机构里面的一个名称下面有多少个价格
需求2:查询E机构下面,两个表中编号相同的项目 展开
B表中存放的是字段有:价格(price ),编号(mediid) 机构(forgid)
一个名称下面可以有多个价格,机构里面也包含多个机构(如:E 和 F)
需求1:现在想查一下:E机构里面的一个名称下面有多少个价格
需求2:查询E机构下面,两个表中编号相同的项目 展开
3个回答
展开全部
问题1:E机构里面的每个名称下面有多少个价格,如果要制定某一个名称,可以在where条件中增加name最为条件:
select a.name , count(price) from a,b where a.mediid = b.mediid and a.forgid = b.forgid and a.forgid = 'E' group by a.name;
如果要去掉重复价格可以增加distinct,如下:
select a.name , count(distinct price) from a,b where a.mediid = b.mediid and a.forgid = b.forgid and a.forgid = 'E' group by a.name;
问题2:查询E机构下面,两个表中编号相同的项目
select count(name) from a,b where a.mediid = b.mediid and a.forgid = b.forgid and a.forgid = 'E';
select a.name , count(price) from a,b where a.mediid = b.mediid and a.forgid = b.forgid and a.forgid = 'E' group by a.name;
如果要去掉重复价格可以增加distinct,如下:
select a.name , count(distinct price) from a,b where a.mediid = b.mediid and a.forgid = b.forgid and a.forgid = 'E' group by a.name;
问题2:查询E机构下面,两个表中编号相同的项目
select count(name) from a,b where a.mediid = b.mediid and a.forgid = b.forgid and a.forgid = 'E';
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询