私の問題は、現在作業しているWebサイトに製品のテーブルが2つあり、テーブルの1つだけを検索する検索機能があることです。ウェブサイトの検索ページを拡張して、両方のテーブルをカバーしたいと思います。
事実上、PHPを使用してユーザーの検索クエリとの関連性を計算できるように、結果セットを結合する2つのクエリが必要です。
mysql_query("SELECT * FROM product WHERE title LIKE '%$keyword%' OR content LIKE '%$keyword%'")
title
product_spray
は、テーブル上にあるフィールドですcontent
。product
上記のクエリを変更して、テーブルとテーブルの結果を含めるにはどうすればよいproduct_spray
ですか?
2つのテーブル間にリンクがないため、必要なJOINかどうかはわかりません。これらは、相互に排他的です。ただし、MySQLの経験はあまりないので、足りないものがあれば教えてください。
私はこれを試しました:
mysql_query("SELECT * FROM product, product_spray WHERE product.title LIKE '%$keyword%' OR product.content LIKE '%$keyword%' OR product_spray.title LIKE '%$keyword%' OR product_spray.content LIKE '%$keyword%'")
結果セットが正しく出てこない、結果を組み合わせているようです。
基本的に、必要なのは1つのクエリですが、2つの排他的なSELECTステートメントを使用します。これはできますか?
2つのクエリの結果セットを組み合わせることができるPHPで何かをすることさえできます。