我有这样的查询:如何在一个查询中合并多个SUM?
SELECT *, SUM(ss.rank) as group_sum
FROM Standard s, s.SubStandard ss
GROUP BY s.id
的问题是我想有SUM(s.rank) as total_rank
在此查询,这怎么可能?
我有这样的查询:如何在一个查询中合并多个SUM?
SELECT *, SUM(ss.rank) as group_sum
FROM Standard s, s.SubStandard ss
GROUP BY s.id
的问题是我想有SUM(s.rank) as total_rank
在此查询,这怎么可能?
Just Try:
SELECT *, SUM(ss.rank) as group_sum ,SUM(s.rank) as total_rank
FROM Standard s, s.SubStandard ss on s.id=ss.sid // => replace with actual column
GROUPBY s.id
如果不同组请使用union
。
列出您的各个列(而不是*)。
SELECT SUM(s.rank) as total_rank, s.id, s.foo, s.bar, SUM(ss.rank) as group_sum FROM standard s...
我建议改变你JOIN了。
... LEFT JOIN substandard ss ON s.id = ss.standard
或类似的东西。
问题是我不知道如何结合两个SUM在一个查询中使用不同的GROUP BY! – samra 2012-02-27 21:30:50
不知道你在找什么,但是这可能帮助:
select s.id, s.title, sum(ss.rank) as group_sum from standard s
join subStandard ss
on s.id = ss.standard_id
group by s.id, s.title
什么问题 – mgraph 2012-02-27 21:23:27
请提供有关(它们之间字段,数据和关系)的表的详细信息 – 2012-02-27 21:24:19
这是我的表:标准(编号,标题,等级),SubStandard(编号,标题,等级,standard_id) – samra 2012-02-27 21:39:25