我已经尝试了无数的方法来实现这一点,但它似乎一次又一次地失败了。在我计算了退货/订购的现场数量后,我试图按产品分组,但我得到了错误
查询不包括指定的表达式"quantity_returned/quantity_ordered"作为聚合函数的一部分。
我不想按数量退货、数量订购和产品分组,我只想按产品分组。
以下是我的SQL当前的样子。。。
SELECT
quantity_returned/quantity_ordered AS percentage_returned,
quantity_returned,
quantity_ordered,
returns_fact.product
FROM
Customer_dimension
INNER JOIN
(
Product_dimension
INNER JOIN
(
Day_dimension
INNER JOIN
returns_fact
ON Day_dimension.day_key = returns_fact.day_key
)
ON Product_dimension.product_key = returns_fact.product_key
)
ON Customer_dimension.customer_key = returns_fact.customer_key
GROUP BY returns_fact.product;
当您使用groupby时,您需要在您的select中实际包含不是聚合函数的所有内容。
我不知道你的桌子是怎么摆的,但我是在盲目地掷镖。如果你在4张表中的每一张表中都提供字段,那么有人会更好地提供帮助。
SELECT returns_fact.product, count(quantity_returned), count(quantity_ordered), count(quantity_returned)/count(quantity_ordered) as percentage returned