2011-07-13 21 views
-3

PHPとMySQLを使用して、自分のデータベースの商品テーブルから商品リストをエコーし​​たいと思います。私はまた、製品の下にある各製品の最新のレビューを3つだけエコーしたいと思っています。 SQLクエリをループ内に置かずにこれを行う方法がありますか?私はスクリプト内で2つ以上のSQLクエリを望んでいますPHP複合SQLクエリ

+0

これは通常、ループで実行されます。複数の表が含まれる可能性があります。おそらくスクリプトでクエリが少なくて済むように、ちょっと不便な複雑なクエリを構築する価値はありません(もっと時間がかかり、より多くのリソースを食べるでしょう)。 –

+1

これまでに書いたコードやデータベーススキーマのようなものですか? –

+0

あなたはMySQLのクエリ変数を使用してそれを行うことができますが、私はあなたのテーブルに関係を見て、あなたが望むコンテンツの基礎を少しもっと構造が必要になります。 – DRapp

答えて

1

よく、いつでもmysql_fetch_arrayを使用してすべてのクエリ情報を取得し、それをループに渡して必要なものを吐き出すことができます。同様のプロセスは、レビューを行うことができますが、あなたが製品のリストと同じページにレビューを表示する場合は、クエリをJOINを使用して、両方のクエリを組み合わせることができますのみ1

mysql_fetch_array()

MySQL JOINを使用して、

3

これ以上の情報がないので、ちょっと推測してください。

SELECT 
    product.stuff, 
    review.stuff 
FROM   
    product 
INNER JOIN 
    review ON review.dates = (SELECT review.stuff 
          FROM review 
          WHERE product.id = review.product_id 
          ORDER BY review.date ASC 
          LIMIT 3)