将GROUP BY与AVG函数一起使用 - 语法错误不正确
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将GROUP BY与AVG函数一起使用 - 语法错误不正确相关的知识,希望对你有一定的参考价值。
SELECT
AVG (CASE
WHEN ItemPrice LIKE '-%'
THEN NULL
WHEN ItemPrice LIKE '0%'
THEN NULL
ELSE CAST (ItemPrice AS FLOAT)
END)
GROUP BY
HHIncome
FROM
Tacos
SQL返回以下错误:
错误:关键字“FROM”附近的语法不正确。 SQLState:S0001 ErrorCode:156
有人可以解释为什么上面的陈述本身是不正确的,但是当嵌套在下面的陈述中时可以操作吗?
SELECT
HHIncome AS Income_Segment,
COUNT(Customer) AS number_of_customers,
AVG (CASE
WHEN ItemPrice LIKE '-%' THEN NULL
WHEN ItemPrice LIKE '0%' THEN NULL
ELSE CAST (ItemPrice AS FLOAT)
END) AS avg_item_price,
COUNT(DISTINCT(ReceiptIDDesc)) AS number_of_orders,
SUM(CAST(ItemPrice AS FLOAT)) AS total_spend
FROM
Tacos
GROUP BY
HHIncome;
答案
问题是GROUP BY和FROM子句的顺序。 GROUP BY需要在FROM [表名]之后。
以上是关于将GROUP BY与AVG函数一起使用 - 语法错误不正确的主要内容,如果未能解决你的问题,请参考以下文章