<?php $fields_array = array("column1", "column2", "column3"); $keyword_array = array("word1", "word2"); $or_phrase = []; foreach($keyword_array AS $keyword){ $like_phrase = []; foreach($fields_array AS $fields){ $like_phrase[] = $fields." like '%".$keyword."%'"; } $or_phrase[] = '(' . implode(" OR ", $like_phrase) . ') '; } $wherestr = implode(" AND ", $or_phrase); echo $wherestr;
対象とするカラム、検索したいキーワードを各配列に格納し、上記のようなスクリプトで、下記を実現できる。
(column1 like ‘%word1%’ OR column2 like ‘%word1%’ OR column3 like ‘%word1%’) AND (column1 like ‘%word2%’ OR column2 like ‘%word2%’ OR column3 like ‘%word2%’)

DBにおいて、複数のカラムを対象にした検索するためのWHERE文を教えてください。
お世話になります。複数のカラムに対して複数のワードを検索するため、以下のようなWHERE文を考えています。
```
(column1 like '%word1%' OR column2 lik
コメント