0

これについて、私の問題を解決する答えを見つけようとしています。個別のテーブルから減算する方法は理解していますが、それが機能するために必要なコンテキストでは理解していません。

      SELECT I.IngredientName AS 'Ingredient Name', QOH AS 'Quantity On Hand',       
      SUM(BrewLine.Quantity) AS 'Total Ingredient Used'
      FROM INGREDIENT I
      INNER JOIN BrewLine 
      ON I.IngredientName = BrewLine.IngredientName 
      GROUP BY I.IngredientName, QOH 

出力に「量」を残すために、SUM(BrewLine.Quantity) から QOH を差し引く別のフィールドが必要です。これについてどのような方法がありますか?それらを差し引いて、GROUP BYに含める必要がある場合。私の出力はすべて斜めになっています。

ありがとうございました

4

1 に答える 1

2

グループ化関数の代わりにパーティション化関数を使用してみることができます。これは、あなたが達成しようとしていることだと思います...

SELECT 
    I.IngredientName AS 'Ingredient Name', 
    QOH AS 'Quantity On Hand',    
    QOH - SUM(BrewLine.Quantity) OVER(PARTITION BY I.IngredientName) AS 'Amount'
FROM INGREDIENT I
INNER JOIN BrewLine 
      ON I.IngredientName = BrewLine.IngredientName 
于 2012-12-02T22:13:12.623 に答える