複数カラムに対して1つのキーワードで検索を行おうとしています。
例えば「大阪」で検索したときに
都道府県カラムの大阪、市町村カラムの大阪、姓名カラムの大阪それぞれどのカラムでもいいので含んでいるレコードを出力したいです
単純にOR条件でWHERE区に条件を書くのがいいでしょうか?
それとも他に何か検討すべき方法などありましたら教えてください。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

回答5件
0
部分一致なので、StrPos関数を使い、
orでつなぐのがいいと思いますよ。
sql
1where StrPos(都道府県,'大阪') > 0 2 or StrPos(市町村,'大阪') > 0 3 or StrPos(姓名,'大阪') > 0
投稿2018/02/15 00:38
総合スコア1147
0
効率を無視していいなら
SQL
1WHERE concat_ws(",",カラム1,カラム2,・・・) LIKE '%大阪%'
みたいなやり方でしょうか
concat(',', tbl.*)
みたいなやり方もできるようです
投稿2018/02/08 04:55
総合スコア117613
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/02/08 05:12
2018/02/08 05:26 編集

退会済みユーザー
2018/02/08 07:10

退会済みユーザー
2018/02/08 08:56 編集
2018/02/08 09:05 編集
2018/02/08 09:09 編集

退会済みユーザー
2018/02/13 10:20

0
PostgreSQLで日本語全文検索 も使えるか試してみては?
投稿2018/02/08 05:53
総合スコア16417
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。