閲覧ありがとうございます。
SQLで3つのテーブルを結合した時の集計の方法を質問したいです。
テーブルは以下の3つです。
user
・user_id
・del_flg
item
・item_no
・price
buy_data
・user_id
・item_no
・amount
・time
抽出したいのは以下のデータです。
ユーザIDごとの購入金額を調べたいです。
user_id | price*amount
試したのは以下のSQLです
SELECT
DISTINCT user.user_id
,SUM(data.amount) * item.price
FROM
user users
INNER JOIN
buy_data data ON data.user_id = users.user_id
INNER JOIN
item ON item.item_no = data.item_no
GROUP BY users.user_id
ORDER BY users.user_id;
GROUP BYを使用すると、item.priceをどう扱っていいかわからず、
user_idをDISTINCTすることも考えたのですが、思うような結果にならず。。
ベストプラクティスを教えていただけると嬉しいです。
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/03/12 14:39