各列:MySQLの正規表現の検索私はこのような正規表現</strong><strong>と私の<strong>のMySQL</strong>データベースを検索してい
$search
は、今私は取得しています、予想通り、すべてのこのWORD1|WORD2|WORD3
$regexp = "REGEXP '[[:<:]][[:alpha:]]*($search)[[:alpha:]]*[[:>:]]'";
SELECT * FROM
zitate
WHERE
UPPER(`field1`) $regexp OR UPPER(`field2`) $regexp OR UPPER(`field3`)
のように見えますエントリ$検索フィールド1またはフィールド2またはフィールド3と一致
しかし、私は受信したいWORD1、WORD2、およびWORD3 が各列内で一致するエントリ、テーブル全体ではありません。
私はこれが原因で、私のクエリでOR
であるが、このような何かを書くよりも良いものがある知っている:
WHERE
UPPER(`field1`) $regexp AND UPPER(`field2`) $regexp
OR
UPPER(`field2`) $regexp AND UPPER(`field3`) $regexp
OR
UPPER(`field1`) $regexp AND UPPER(`field3`) $regexp
OR
UPPER(`field1`) $regexp AND UPPER(`field2`) $regexp AND UPPER(`field3`) $regexp
または私はこのAND
、OR
クエリを使用する必要がありますが?
ヒントと回答ありがとう!
本当に私に助言を与えることができない人はいませんか? – Fabian