- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:複数のカテゴリを選択した上でLIKE検索)
複数のカテゴリを選択した上でLIKE検索
このQ&Aのポイント
- SQLITE3を使用した複数キーワードの検索プログラムの作成方法を教えてください。
- 自分の日記をカテゴリーごとに分けて保存していますが、趣味と仕事のカテゴリー内で複数キーワードの検索を行いたいです。
- 上記のSQL文を使用しましたが、正しく動作しませんでした。正しいSQL文の書き方を教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
たとえばこんな感じです。 select * from table where kuwake in ('hobby', 'work') and (main LIKE '%キーワード1%' or main LIKE '%キーワード2%');
その他の回答 (1)
- Doraemonster
- ベストアンサー率23% (15/63)
回答No.1
私はSQLITE3を知りませんので完全について動作するSQLを 提示することはできません。 しかし、SQLの基本はどのDBでも変わらないと思いますので いくつか指摘させていただきます。 ご確認の上、ご自分で正しいSQLに到達されますよう。。。 まず selectの対象が間違っています。 欲しいのは本文でしたら、対象は格納先であるmainでしょうか 次にwhere句ですが、ここには通常検索条件を指定します。 ご自分で「趣味(hobby) と 仕事(work) のカテゴリー の中で」検索したい と仰っているので、これもwhere句で指定してやるべきでしょう。 但し、単純にandで繋げては動かないSQLになります。 kuwakeには1つしか選択できない=1つしか格納されていない のですから、「趣味(hobby)か仕事(work)」を条件とする必要があります。 どちらか(あるいはいずれか)が一致する条件を指定するには、 条件をorで繋げます。 A または B → A or b ※A,Bはそれぞれ1つの条件(date=now のような)です。 あとはorの影響する部分を括弧()でくくります。 ※加算乗算の入り乱れた式で加算部分を括弧で囲むようなイメージです。 以上お役に立てば幸いです。
質問者
お礼
すぐに解答をしていただき、誠にありがとうございます。 SQL文を分かりやすく説明していただき本当に感謝です。 ありがとうございました。
お礼
ありがとうございます。おかげさまで無事思い通りの結果が出せました。 助かりました。本当にありがとうございました^^