私はこのフォーラムをしばらく使用して、SQL関連の質問に対する回答を見つけました。さて、私がしばらくの間理解しようとした質問をする時が来ました。
2つのテーブル(製品とソース)があります。
ソースからレコードのリストを取得し、製品から1つの追加レコード(価格の合計)を取得するSQLSELECTを作成したいと思います。私が見たいテーブルは次のようになります。
source.source_id | source.location | source.source_name | source.source_description | source.source_date | source.price | SUM(product.price)| SUM(product.price)WHERE product.quantity <1(この最後の列は私が行き詰まっているところです)。
source.locationとproduct.locationがリンクされています。
このコードは機能し、私が望む結果をもたらします:
SELECT s.source_id
, s.location
, s.source_name
, s.source_description
, s.source_date
, s.source_price
, p2.Total
, sum(p1.price) as SumProductSold
FROM source s
JOIN product p1
on s.location = p1.location
JOIN
(
SELECT location, sum(price) as Total
FROM product
GROUP BY location
) p2
on s.location = p2.location
WHERE p1.quantity < 1
GROUP BY s.source_id, s.location, s.source_name
, s.source_description, s.source_date, s.source_price, p2.Total
ブルーフィートありがとう!