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机构下面,两个表中编号相同的项目 展开
展开全部
问题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';
展开全部
select name,count(*) from a,b where a.moduleid=b.moduleid
and a.forgid='粗宽E'岩敏亮拿碧 group by name
and a.forgid='粗宽E'岩敏亮拿碧 group by name
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你要是不建主键多少个都可以有
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询