フォーラムでさまざまな「条件付き合計」の質問を確認しましたが、私がやろうとしていることとまったく一致するものはありません。
データベースにはDate
、Store#
、Item#
、およびがあり%Total Sales
ます。場合によっては、同じ日付の同じ item# に複数の値が指定されることがあります%Total Sales
。(何らかの理由で、これはめったに発生しない有効なビジネス シナリオですが、発生します。)
その場合のみ、要件は 2 つの値を合計して 1 行にすることです。したがって、Item# 123 に値が .05% の行と値が .08% の別の行がある場合、これら 2 つの値を合計して、%Total
.13% の値を持つ Item #123 の 1 つの行にする必要があります。アイテムに複数のパーセンテージが割り当てられている場合のみ、それらのパーセンテージを合計する必要があります。それ以外の場合、item# に割り当てられたパーセンテージ値が 1 つだけの場合、その値を確認したいだけです。
これを行う方法がわかりません。基本的に、次のように機能するロジックを実装したいと思います。
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#
ただし、構文エラーが発生しないように作成する方法がわかりません (このクエリはエラーを生成します)。
どんな助けでも大歓迎です。
ありがとうございました!