Select 不同显示同一记录的多个值
Select Distinct Showing Multiple Values of Same Record
我有下面的代码,我想在一段时间内查看 UPC 的销售情况。如您所见,我有 Select Distinct 开始,但它仍然显示同一 UPC 的多个条目。
我希望它显示 UPC,然后在有多个 UPC 时求和该 UPC 的值。
有什么见解吗?
我有下面的代码。
我删除了 "Group By" 评论,因为每次我尝试按 UPC 分组时,它都会给我一个错误 "Selected non-aggregate values must be part of the associated group."
SELECT DISTINCT ir.region,
ir.upc,
ir.item_long_description,
ir.team_name,
ir.subteam_name,
brand,
p.sale_units,
p.sale_value
FROM prd_sales_cost_summary_v p
JOIN item_region_v ir
ON p.upc = ir.upc
AND p.pos_dept = ir.pos_dept --AND p.store_number = ir.store_number
WHERE ir.subteam_name = 'Frozen'
AND
--prd_idnt BETWEEN 201601 AND 201602 AND
prd_idnt = 201601
AND
--Change the region if needed
ir.region = 'RM'
--GROUP BY 2
ORDER BY p.sale_units DESC
"Selected non-aggregate values must be part of the associated group."
这意味着如果您将字段放在 SELECT
列表中,则必须将其放在分组依据中。
所以
SELECT fieldA, fieldB, fieldC, SUM(*)
FROM YourTable
GROUP BY fieldA, fieldB, fieldC
另请注意,您的 select 没有任何聚合函数 COUNT()
SUM()
AVG()
我有下面的代码,我想在一段时间内查看 UPC 的销售情况。如您所见,我有 Select Distinct 开始,但它仍然显示同一 UPC 的多个条目。
我希望它显示 UPC,然后在有多个 UPC 时求和该 UPC 的值。 有什么见解吗?
我有下面的代码。 我删除了 "Group By" 评论,因为每次我尝试按 UPC 分组时,它都会给我一个错误 "Selected non-aggregate values must be part of the associated group."
SELECT DISTINCT ir.region,
ir.upc,
ir.item_long_description,
ir.team_name,
ir.subteam_name,
brand,
p.sale_units,
p.sale_value
FROM prd_sales_cost_summary_v p
JOIN item_region_v ir
ON p.upc = ir.upc
AND p.pos_dept = ir.pos_dept --AND p.store_number = ir.store_number
WHERE ir.subteam_name = 'Frozen'
AND
--prd_idnt BETWEEN 201601 AND 201602 AND
prd_idnt = 201601
AND
--Change the region if needed
ir.region = 'RM'
--GROUP BY 2
ORDER BY p.sale_units DESC
"Selected non-aggregate values must be part of the associated group."
这意味着如果您将字段放在 SELECT
列表中,则必须将其放在分组依据中。
所以
SELECT fieldA, fieldB, fieldC, SUM(*)
FROM YourTable
GROUP BY fieldA, fieldB, fieldC
另请注意,您的 select 没有任何聚合函数 COUNT()
SUM()
AVG()