このクエリを使用して、各顧客が行った注文数の必要な結果を取得します。ただし、SELECTフィールドでSUM(OrderLine.ActualPrice)を使用し、内部結合を使用して、Orderテーブルを価格を含むOrderLineテーブルにリンクするとします。1つの注文に複数の商品を含めることができるため、OrderLineテーブルには同じ注文の複数のOrderNoが含まれているため、COUNTの結果は歪んでいます。
注文の合計購入額のSUMクエリを入力しながら、このクエリで得られた結果にCOUNTを保持するにはどうすればよいですか?
SELECT C.custno,
companyname,
Count(customerorder.orderno)AS 'Total Orders',
FROM customer C
INNER JOIN customerorder
ON customerorder.custno = C.custno
GROUP BY C.custno,
companyname
誤った結果を伴う修正されたクエリ
SELECT C.custno,
companyname,
Count(customerorder.orderno)AS 'Total Orders',
Sum(orderline.actualprice)
FROM customer C
INNER JOIN customerorder
ON customerorder.custno = C.custno
INNER JOIN orderline
ON customerorder.orderno = orderline.orderno
GROUP BY C.custno,
companyname
これは私が使用しようとしたクエリであり、歪んだCOUNT結果を受け取りました。