- ベストアンサー
絞込みする時のSQLの書き方
お世話になります。 絞込みする時のSQLの書き方について教えてください。 具体的には テーブル名tbl01,フィールド名f01,f02とした場合 1.f01もしくはf02にAという文字を含むレコードを抽出。 SQL = "select * from tbl01 where f01 like '%A%' or f02 like '%A%'" 2.続いて、1で抽出したデータからf01もしくはf02にBという文字を含むレコードを抽出するSQL文 SQL = ????? あくまでも、1と2を満たす条件を1つのSQL文で表す方法です。一旦、1の結果をワークテーブルに落とし、そこから2だけのSQL文を実行するわけではありません。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
ANDで条件を追加すればOKです。 SQL = "select * from tbl01 where (f01 like '%A%' or f02 like '%A%') and (f01 like '%B%' or f02 like '%B%')"
その他の回答 (2)
noname#102878
回答No.3
演算ですからカッコ「( )」で優先順位をつけたり、まとめたりしましょう。
noname#2497
回答No.2
ANDで追加条件を指定するだけでは上手く抽出できませんか? あるいは、DBMSがORACLEの場合は、以下のようなことができますよ。 select * from (select * from tbl01 where f01 like '%A%' or f02 like '%A%') where f01 like '%B%' or f02 like '%B%';