SQL语句 group by 后的排序问题

来源:百度知道 编辑:UC知道 时间:2024/04/28 18:06:38
表一
id fruit
1 苹果
2 香蕉
3 橘子
4 菠萝

表二
id fruit num
1 苹果 3
2 苹果 3
3 橘子 2
4 香蕉 5
5 菠萝 3
6 菠萝 2

统计表2

要求按照表一中id ASC 顺序统计表2中各种水果的个数
select sum(num) group by fruit……

也就是说显示结果为

苹果 6
香蕉 5
橘子 2
菠萝 5

这该怎么做?
还有没有?

select fruit,sum(num)
from 表一 inner join 表二 on (表一.fruit=表二.fruit)
group by 表一.fruit
order by 表一.id

SELECT 表一.id,表一.fruit, SUM(表二.num) AS num1
FROM 表二 INNER JOIN
表一 ON 表一.fruit = 表二.fruit
GROUP BY 表一.fruit, 表一.id
ORDER BY 表一.id

或者:(像namhyuk songhongbiao两位的)
SELECT fruit,
(SELECT SUM(num)
FROM 表二
WHERE 表二.fruit = 表一.fruit) AS num1
FROM 表一
ORDER BY id

select fruit, (select sum(num) from 表2 where 表2.fruit = 表1.fruit) from 表1 order by id

select fruit, (select sum(num) from 表2 where 表2.fruit = 表1.fruit) from 表1 order by id