dポイントプレゼントキャンペーン実施中!

オラクル10gで開発を行っています。文字コードはJA16SJISTILDEです。

現在、テーブルの中には条件なしで様々な文字種類のデータが入っているとします。
全角ひらがな・カタカナ、半角数字・カタカナ、全半角英字・記号等です。

例えば”アイウエオ”を含む文字列を検索するselect文を実行したとき、
以下のようなものがヒットします。
”アイウエオ”
”アイウエオ” ←半角カタカナ
”あいうえお” ←ヒットしてもしなくてもよい。

例えば”ガギグゲゴ”を含む文字列を検索するselect文を実行したとき、
以下のようなものがヒットします。
”ガギグゲゴ”
”ガギグゲゴ” ←半角カタカナ
”がぎぐげご” ←ヒットしてもしなくてもよい。

例えば”&”を含む文字列を検索するselect文を実行したとき、
以下のようなものがヒットします。
”&”
”&”←半角記号

要は、何が言いたいのかいいますと、全角文字の文字列で検索を行ったとき、
全角・半角の区別をしないで検索結果を得るSQL文を考えています。
どのようなSQLにすればよいのかアドバイスをお願いします。

もし、SQL文のみでは実現不可能であれば、●●●といった形で検索結果を
得てそのうち△△△に該当するデータを抽出するといった複数ステップを踏む
方式でも構いません。

A 回答 (2件)

http://www.shift-the-oracle.com/sql/national-lan …
ここを参考に、to_multi_byteとnlssortを使えばいけるかなと思ったのですが、
半角カナで濁点があったりするとダメでした・・

ORACLE TEXT を使ってみてはどうでしょうか?
http://www.esco-sb.jp/blog/roughjustice/archives …
http://www.okisoft.co.jp/esc/ora.html#ora01
を参考に。
    • good
    • 0

半角→全角の変換とか、役に立つストアドプロシージャの


サンプルが掲載されています。
http://www.shift-the-oracle.com/plsql/user-packa …
    • good
    • 0

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