MySQLでの複数テーブル(4つ)への検索について
はじめまして、こんばんは。
現在、ECサイトを構築中なのですが、MySQLにPHPから検索をかけたいのですが、どうにも詰まってしまったので、投稿させて頂きました。
PHPバージョン:PHP 5.2.6
DBバージョン:MySQL 4.1.22
機能としては、購入履歴から、購入商品のランキングを作りたいと思っております。
ランキング自体の表示はOKなのですが、そこに商品のカテゴリーを表示させたいのです。
関係するテーブルは以下の通りです。
【order】購入履歴テーブル
product_id:商品ID
【products】商品テーブル
product_id:商品ID
name:商品名
image:商品画像
【p_category】商品カテゴリーテーブル
product_id:商品ID
category_id:カテゴリーID
【category】カテゴリーテーブル
category_id:カテゴリーID
category_name:カテゴリー名
parent_category_id:親カテゴリーID
【表示させたい項目】
product_id:商品ID
name:商品名
image:商品画像
category_id:カテゴリーID
category_name:カテゴリー名
parent_category_id:親カテゴリーID
現在のソースは以下の通りです。
---------------------------------------
SELECT
count(o.product_id) as rank,
name,
image,
p.product_id
FROM
order as o,
products as p
WHERE
o.product_id=p.product_id
GROUP BY
name,
image,
p.product_id
ORDER BY
rank desc limit 5
---------------------------------------
上記にプラスしたいのは、
p.product_idと【p_category】のproduct_idが一致したcategory_idを取得して、【p_category】のcategory_idと【category】category_idが一致したcategory_name、parent_category_idも取得したいです。
分かりにくいうえに、長文になってしまいましたが、ご指導・ご鞭撻のほど宜しくお願い申し上げます。