我有两个问题
SELECT SUM(amount) as amount FROM sales
SELECT COUNT(id) as total FROM sales GROUP BY rep_id
如何将这两个查询合并为一个? 如果我在第一个分组时,它只按金额分组。
答案 0 :(得分:0)
试试这个:
SELECT SUM(金额)金额,(SELECT COUNT(id)as FROM FROM sales GROUP BY rep_id)FROM sales
答案 1 :(得分:0)
Select (Select Sum(Amount) from sales) Amount,
count(*) total
from sales
group by repID
但是要理解,这将为每个RepID生成一行,包括所有repId的总销售额,以及每行上只有该repId的销售额。
T \以这种方式呈现数据,其中每行上的一列数据仅包含该行的数据,而另一列包含对所有行进行求和的值,这可能非常混乱和误导。
答案 2 :(得分:0)
您只需使用UNION
关键字即可。根据MySql文档,
UNION
用于将多个SELECT语句的结果合并为一个结果集。
实际上,根据您的两个SQL查询:
SELECT SUM(amount) as total FROM sales
UNION
SELECT COUNT(id) as total FROM sales
GROUP BY rep_id
请注意,上面的查询会生成一个具有相同别名的单个列。但这不是一个问题,因为你已经知道哪一行符合哪个查询。