求mysql高手帮我看看关于多表联合查询语句:查询A表所有记录并按照A表id在B表出现次数排序 20

我有两张表A和BA表AIDname1名字12名字23名字34名字4B表BIDAIDvalue113221623354429553576354我想按照AID在B表里出现的数... 我有两张表A和B
A表

AID name
1 名字1
2 名字2
3 名字3
4 名字4

B表
BID AID value
1 1 32
2 1 62
3 3 54
4 2 95
5 3 57
6 3 54

我想按照AID在B表里出现的数量的排序方式来列出A表里面的信息如:
AID name 在B里的数量
1 名字3 3
2 名字1 2
3 名字2 1
4 名字4 0
展开
 我来答
帐号已注销
2015-01-07 · TA获得超过816个赞
知道小有建树答主
回答量:410
采纳率:0%
帮助的人:211万
展开全部
SELECT AID,NAME,COUNT(*) '数量' FROM A,B GROUP BY B.value ORDER BY '数量' DESC

我没有数据库不能调试,试试行不行

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百事牛
2024-10-28 广告
针对Excel表格的密码解锁问题,深圳奥凯丰科技有限公司提供专业的软件解决方案,旨在帮助用户快速、安全地恢复或移除表格中的保护密码。我们的软件采用先进的密码恢复技术,能够有效应对多种加密类型,包括工作簿打开密码、工作表保护密码等。用户只需简... 点击进入详情页
本回答由百事牛提供
novice_pegasus
2015-01-10 · TA获得超过624个赞
知道小有建树答主
回答量:722
采纳率:100%
帮助的人:649万
展开全部
SELECT a.*,if(b.cnt is null,0,b.cnt) FROM A表 a LEFT JOIN (SELECT aid,count(*) as cnt from B表 group by aid) b ON a.aid=b.aid order by b.cnt desc;
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
奴性的世界day
2015-01-07 · TA获得超过558个赞
知道小有建树答主
回答量:575
采纳率:0%
帮助的人:385万
展开全部
select * from B left jion A  on A.AID=B.AID order by value
追问
不是按照value排序的,是按照A表的每个id在B表出现次数排序,value是个无关主要的字段
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
edge2906
2015-01-10 · 超过14用户采纳过TA的回答
知道答主
回答量:32
采纳率:100%
帮助的人:18.8万
展开全部
select AID,name,count(*) as num
from A
left join B
on A.AID = B.AID
order by num
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式