gpt4 book ai didi

mysql - 两个值的除法总和,分组,最高的三个

转载 作者:行者123 更新时间:2023-11-29 19:20:46 25 4
gpt4 key购买 nike

我想从表中获取最高的三个值。该值的计算方法是将按名称分组的所有“伏特”加在一起,然后除以安培。每个名称的安培数始终相同,因此不需要计算(也不需要平均)。

我尝试了下面的示例,但 TotalSum 对于所有三个都返回 0。

SELECT name, sum(volts/amps) TotalSum 
FROM mytable
WHERE MONTH(FROM_UNIXTIME(time_to)) = MONTH(CURRENT_DATE())
GROUP BY field1
ORDER BY TotalSum
LIMIT 3

...

while ($row = mysqli_fetch_array($mostused, MYSQLI_ASSOC)) {
echo $row['name'] . ' (' . $row['TotalSum'] . '), ';
}

表:

name    volts    amps
A 10 2
A 15 2
A 12 2
B 2 1
B 4 1
B 8 1
C 20 5
C 20 5
C 20 5

结果按最高排序:

1] A = 37/2 = 18.5 ... echo 'A (18.5)'
2] B = 14/1 = 14 ... echo 'B (14)'
3] C = 60/5 = 12 ... echo 'C (12)'

我的查询有什么错误?

最佳答案

使用降序排序来获取最高的三个:

SELECT name, sum(volts/amps) TotalSum 
FROM mytable
WHERE MONTH(FROM_UNIXTIME(time_to)) = MONTH(CURRENT_DATE())
GROUP BY name
ORDER BY TotalSum desc -- here
LIMIT 3

关于mysql - 两个值的除法总和,分组,最高的三个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42465761/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com