2011-07-25 4 views
1

I私の用語は、例えばiphoneのipodある場合は、次のクエリすべての検索語句を含むony結果を返すようにSELECT MATCH AGAINSTを制限するにはどうすればよいですか?

SELECT id FROM products WHERE MATCH (name) AGAINST ('$term') 

は私に用語または片方のみの両方が含まれている結果が得られます。

両方の用語を含む結果のみを表示するにはどうすればよいですか?スピードは私の心配です。

ありがとうございます。 SQLインジェクションを防ぐために、入力条件をエスケープするようにしてください

$words = explode(" ", $term); 
$all = implode(" +",$words); 

$sql = 
    "SELECT id 
    FROM products 
    WHERE MATCH (name) AGAINST ('+" . $all . "' IN BOOLEAN MODE)" 

Documentation

答えて

1

+すべての前に単語を追加します。

+0

こんにちは、ありがとうございます。これは速い方法ですか? – EnexoOnoma

+0

@nikolaiする必要があります。 –

関連する問題