Interstage Data Effector ユーザーズガイド
目次 索引 前ページ次ページ

第4章 データを操作する方法> 4.5 データをソートする> 4.5.1 ソートする

4.5.1.1 文字列でソートする

対象データが持つ文字列でソートできます。文字列の大小関係は、文字列の文字コード値の大小関係です。文字列でソートする場合は、ソート式のキー指定にテキスト式、項目名またはrlen関数を指定します。

キー指定の詳細については、“A.4.1 ソート式の書式”を参照してください。

氏名ひらがな(namekana)で昇順にソートします。
$namekana

結果:文書D、B、C、Aの順に返却されます。

氏名ひらがな(namekana)で降順にソートします。
/doc/namekana/text() DESC

結果:文書A、C、B、Dの順に返却されます。

データ中にソート式で指定したデータがない場合は、“DESC”の指定の有無にかかわらず、その文書は最後に返却されます。上記のXML例の文書Dは、出張日(date)の早い順でも遅い順でも最後に返却されます。

文字列でソートする場合、文字列の先頭20バイトをキーにしてソートを実施します。このため、指定したキー指定の文字列の長さが20バイトよりも大きい場合、文書は20バイト目以降の文字で正しくソートされません。このような場合は、キー指定にrlen関数を指定して、先頭から何文字をソートキーとするかを指定できます。

出張エリア(area)でソートしたい場合
rlen(/doc/detail/area/text(),10)

上記のように指定すると、出張エリアの先頭から10文字をソートキーとして利用します。


目次 索引 前ページ次ページ

Copyright 2007 FUJITSU LIMITED