オラクルを極める!⑥【文字列を横に連結する ユーザー定義集計関数 編】
- 2008.09.29
- IT関連
- ユーザー定義集計関数
SUM関数の文字列版があれば便利だと思ったことはありませんか?
グループ化したレコードをカンマ区切りで出力したいときなど。
ORACLEの場合、デフォルトでこのような関数が用意されていないので自前で関数を作成する必要があります。
ここを参考に。
ORACLE(ユーザー定義集計関数)
集計関数を自前できれば、プログラム内で文字列を結合していくという手間が省けます。
下記の例では、CHAR_SUMというユーザー定義集計関数を作成してみました。
NAMEという列に入った文字列がカンマ区切りで、グループ化されています。
使用テーブル
ただこのままでは、連結文字列の中の並び順を指定することができません。
(画像の例では、北海道、青森・・・の順で連結文字列の中を並び替えたい等)
そんなときは、分析関数などを使用します。
ID順に連結文字列の中を並び替えています。
(北海道が連結文字列の中で先頭にきている)
おしまい
-
前の記事
資格試験の合格率を上げる魔法三カ条 2008.09.29
-
次の記事
動画共有サイトについて その1 2008.10.01