[pgsql-jp: 33959] Re: 五十音順検索
Magara Yasuhiro
gama @ lifemedia.co.jp
2004年 9月 1日 (水) 20:37:24 JST
まがら@ライフメディアです。
>>>>> In <20040901180456.D853.ICC10325 @ nifty.com>
>>>>> wrote:
> テーブル内に全角カタカナのみが入力されたカラム(カラム名例:hurigana)
> が存在して、そのカラムのデータに対して五十音検索を行いたいと考えており
> ます。
> (ア行・カ行・・・)
> 皆さんはこのような場合どのようなSQLを記述しますか?
平仮名で似たような事をしていますが、単純な文字列比較で範囲を指定しています。
SQLでなくてJBoss-QLで書いてますが、
@jboss.query
signature="java.util.Collection findByNameRange(java.lang.String from, java.lang.String to)"
query="SELECT OBJECT(a) FROM authorSchema AS a WHERE a.furigana >= ?1 AND a.furigana < ?2 ORDER BY a.furigana"
で意図した動作をしています。
「あ行」の時は、fromに'あ', toに'か'を与えています。
>>>>> In <20040901194301.D860.ICC10325 @ nifty.com>
> しかも「ア行」と言われたら「ァィゥェォ(全角カタカナのア行小文字?)」
> も一応考えないといけないかも?・・・とか考えるとパニック状態です・・・
UnicodeやJISなら、文字コード順に「ァアィイゥウェエォオ
カガキギクグケゲコゴ...」と並んでいるようですので、案外簡単に
できると思います。カ行とガ行を分けろと言われたら悩んじゃいますね。
--
眞柄 康弘 (Magara Yasuhiro)
@ 株式会社ライフメディア http://www.lifemedia.co.jp/
携帯書房 http://ktai.lifemedia.jp/shobo/
pgsql-jp メーリングリストの案内