テーブルの集計+結合
MySQL+ PHPについて質問です。
商品リスト(テーブルA)から、商品名で関連付けられたユーザー評価(テーブルB)があったとします。
ユーザーが商品ページから評価を5段階でを入れれるようにしました。
商品一覧のページで商品リスト(テーブルA)を表示させ
さらにユーザー評価の平均を一緒にテーブルAの商品名から関連付けるように表示させたいのですが、どうやったらいいのでしょうか。
イメージは下記の通りです。
---------------------------------------------------------------
商品名(テーブルA) ∥ 商品説明(テーブルA) ∥ 商品ランク(テーブルB)
---------------------------------------------------------------
オレンジ | おいしい | 評価5
---------------------------------------------------------------
りんご | おいしい | 評価4
---------------------------------------------------------------
試したSQL文は以下の通りです。
"SELECT title, avg(rank) as avgrank FROM テーブルB group by title
join
テーブルA
テーブルA .title = テーブルB.title";
残念ながらエラーなのですが、正しくはどう書くのでしょうか。
単純にユーザーが1人であればそのまま結合できるのですが、同じタイトルのものの評価を平均しないといけないため、頭がおかしくなりそうです。
お礼
ありがとうございます。 テーブル有りのご意見が多く、必要なんだなーと思いました。 あまりセコセコしないでテーブル付きを購入した方がいいのかもしれませんね。