我已经查看了论坛中的各种“条件和”问题,但没有一个完全符合我想要做的:
在数据库中,有Date
、Store#
、Item#
和%Total Sales
。在某些情况下,同一日期的同一项目# 可能会被赋予多个值%Total Sales
。(出于某种原因,这是一个很少发生的有效业务场景,但它确实发生了。)
仅在这种情况下,要求是将两个值相加成一行。因此,如果 Item#123 有一行的值为 0.05%,另一行的值为 0.08%,我需要将这两个值相加为 Item #123 的一行,其 a%Total
为 0.13%。只有当一个项目分配了一个以上的百分比时,才应将这些百分比相加。否则,如果 item# 仅分配了一个百分比值,我们只想查看该值。
我无法弄清楚如何做到这一点。基本上,我想实现这样工作的逻辑:
SELECT Date, Store#, Item#,
CASE WHEN Count(%Total Sales) >1 THEN Sum(%Total Sales)
ELSE %Total Sales
END
FROM (some tables and joins)
GROUP BY Date, Store#, Item#
但是,我不确定如何制作它,以免出现语法错误(此查询会产生错误)。
任何帮助,将不胜感激。
谢谢!