PHP/MySQL で次の選択クエリを実行する方法を知りたいです。
MySQL フィールドが呼び出され、次の'types'
ような値が含まれますProvincie\,Gebied\,Water\
。Water\,Plaats\
次に、PHP で、次のような形式の文字列を受け取ります。$types = 'Plaats, Provincie, Gebied, Water'
私がやりたいことは、PHP 配列にある値の少なくとも 1 つを含むすべての行を選択することです。
これを行う最善の方法について何か考えはありますか?
編集 DBに別のテーブルを追加することはできませんが、それは良いオプションです。
列を返さないのは次のとおりです。
$types = explode(',', $types);
$typesSQL = '';
foreach($types as $type){
$type = str_replace(' ', '', $type);
$typesSQL .= "FIND_IN_SET('$type', types) OR ";
}
$typesSQL = substr($typesSQL, 0, -3);
SELECT * FROM ".$wpdb->prefix."ttr_results WHERE user_id = $user_id AND area = '$area' AND content = '$content' AND ($typesSQL) ORDER BY datetime DESC