SQL Server 2005 を使用して、数量の計算フィールドを持つバンドルから子レコードを取得するクエリがあります。クエリは次のようになります。
SELECT TblB_1.fooID,
TblC.quantity * (TblA.quantity) AS Quantity,
TblB_1.name AS Name
FROM TblB AS TblB_1 INNER JOIN
TblC ON TblB_1.fooID = TblC.fooID RIGHT OUTER JOIN
TblB INNER JOIN
TblA ON TblB.fooID = TblA.fooID ON TblC.parentfooID = TblB.fooID
WHERE (TblB.isBundle = 1) AND (TblA.isDeleted = 0)
ID でグループ化し、数量フィールドの合計を取得できるようにする必要があります。私はこのような合計で数量行をラップしようとしました:
SUM(TblC.quantity * (TblA.quantity)) AS Quantity,
次に追加
GROUP BY TblB_1.fooID
WHERE句の後、しかし、それは「集計関数またはGROUP BY句のいずれにも含まれていないため、選択リストでTblB_1.nameが無効です」というエラーが発生します。
また、このタスクにサブクエリを使用して頭を悩ませようとしましたが、それも機能させることができませんでした。また、ここまたは Web で、適応できた例を見つけることもできませんでした。ありがとう - ダン