SQL Server 2008 を使用して、次の 2 つのテーブルがSALESORD_HDR
あります。SALESORD_LINES
共通識別子はSALESORD_HDR.SEQNO
このクエリの結果の合計を見つけたい:
Select
SOL.STOCKCODE as SC,ORD_QUANT as OQ
from
SALESORD_LINES SOL
INNER JOIN
SALESORD_HDR SOH ON SOL.HDR_SEQNO = SOH.SEQNO
WHERE
SOL.HDR_STATUS = '6' AND SOH.ORDERDATE > DATEDIFF(D,120,getdate())
ORDER BY
SOL.STOCKCODE
これにより、使用する正しいデータが得られます。ORD_QUANT
しかし、の各レコードの値の合計を見つけたいですSTOCKCODE
。
私はこれを入れてみました:
Select SOL.STOCKCODE as SC,SUM(ORD_QUANT) as OQ
しかし、それは失敗し、
メッセージ 8120、レベル 16、状態 1、行 1
列 'SALESORD_LINES.STOCKCODE' は、集計関数にも GROUP BY 句にも含まれていないため、選択リストでは無効です。
私が知らないSUMを構文する方法があります:)
どんな助けでも大歓迎です!