電子書籍の厳選無料作品が豊富!

こんにちは

SQLで困っています>_<!!

曖昧検索をしたいのですが、大文字小文字、全角半角
関係なく、文字の並びが一致したら取得するようなことはできるのでしょうか?

StudentテーブルのNAMEカラム↓
あああABCいいい
あああAbcいいい
あああABCいいい

この時、条件に「NAME like '%ABC%'」としたら
全部引っかかるようにしたいんです。

SQLでこのような取得は無理なのでしょうか?
Javaとうまく組み合わせて使いたいのですが。。

どなたかご指導宜しくお願いします。

A 回答 (1件)

10g以上であれば、REGEXP_LIKE関数が使えるかもしれません。


一度、調査されてはいかかでしょう。

SQL> conn scotch/whisky
接続されました。
SQL> with student as (
2 select 'あああABCいいい' name from dual union all
3 select 'あああAbcいいい' name from dual union all
4 select 'あああABCいいい' name from dual
5 )
6 select * from student
7 where regexp_like(name,'[AaA][BbB][CcC]');

NAME
------------------------------------------------------
あああABCいいい
あああAbcいいい
あああABCいいい
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます!
REGEXP_LIKE関数を使用して期待される結果が得られました☆

しかし、条件の文字列もパラメータとして与えたいと考えているので、
その部分はJavaで組み立てようと思います。

ありがとうございます!

お礼日時:2009/12/23 00:33

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!