gpt4 book ai didi

MySQL 查询 - 使用 CAST 和 SUM 时组函数无效

转载 作者:行者123 更新时间:2023-11-30 01:32:59 25 4
gpt4 key购买 nike

我有以下查询生成“无效使用组函数”错误:

SELECT dac_name, unit_name, ptn, unit_type, monthly_recurring, directory_charges
FROM sprint WHERE date='$current_sprint_date' AND CAST( directory_charges AS DECIMAL( 10, 2 ) ) > SUM( CAST( directory_charges AS DECIMAL( 10, 2 ) ) * .01) ORDER BY CAST(directory_charges AS DECIMAL(10,2)) DESC LIMIT 10;

似乎无法弄清楚。非常感谢任何帮助。

最佳答案

您不能在 WHERE 子句中使用诸如 SUM() 之类的聚合函数。聚合取决于所选的行,因此在选择行时使用它们没有意义。您可以在 HAVING 子句中使用它,该子句在选择并处理行后执行第二个过滤器:

SELECT dac_name, unit_name, ptn, unit_type, monthly_recurring, directory_charges
FROM sprint
WHERE date='$current_sprint_date'
HAVING CAST( directory_charges AS DECIMAL( 10, 2 ) ) > SUM( CAST( directory_charges AS DECIMAL( 10, 2 ) ) * .01)
ORDER BY CAST(directory_charges AS DECIMAL(10,2)) DESC
LIMIT 10;

关于MySQL 查询 - 使用 CAST 和 SUM 时组函数无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17225884/

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