问题描述
在mariadb存储过程查询中我需要帮助-
需要获得(COUNT(ID)*AvgWeight) from table A group by AvgWeight
不使用模板插入
我有ID
和avgweight
1 55
2 55
3 45
4 45
5 45
6 60
7 60
所以我需要sum(2into55+3into45+2into60)
作为单个值
解决方法
您可以使用两种聚合级别:
select sum(avgweight * cnt) res
from (
select avgweight,count(*) cnt
from mytable
group by avgweight
) t
,
您可以对子查询执行查询。您描述的所需子查询如下所示:
SELECT COUNT(*) AS count,AvgWeight FROM A GROUP BY AvgWeight
我不太清楚您到底想要什么,但是我假设求和是AvgWeight的总和?您应该能够根据需要调整以下查询:
SELECT SUM(AvgWeight)
FROM (SELECT COUNT(*) AS count,AvgWeight FROM A GROUP BY AvgWeight)