ページのトップに戻る
Interstage Data Effector ユーザーズガイド

3.5.2 ソート結果を出力する

ソート結果をそのまま出力したい場合は、リターン式を指定する必要はありません。

例として以下の文書があるものとします。


入力ファイル

文書A

"name","namekana","date","train","taxi","hotel"
"田中愛子","たなかあいこ","2007年07月01日","7200円","1000円","8500円"

文書B

"name","namekana","date","train","taxi","hotel"
"鈴木一郎","すずきいちろう","2007年07月02日","14200円","1820円","7800円"

文書C

"name","namekana","date","train","taxi","hotel"
"鈴木太郎","すずきたろう","2007年07月03日",,"1200円","7800円"

文書D

"name","namekana","date","train","taxi","hotel"
"佐藤花子","さとうはなこ","2007年07月04日","5600円","2400円",

文書A

<doc>
  <name>田中愛子</name>
  <namekana>たなかあいこ</namekana>
  <detail>
    <date>2007年07月01日</date>
    <area>神奈川県横浜市港北区</area>
    <train>7200円</train>
    <taxi>1000円</taxi>
    <hotel>8500円</hotel>
  </detail>
</doc>

文書B

<doc>
  <name>鈴木一郎</name>
  <namekana>すずきいちろう</namekana>
  <detail>
    <date>2007年07月02日</date>
    <area>神奈川県横浜市港北区</area>
    <train>14200円</train>
    <taxi>1820円</taxi>
    <hotel>7800円</hotel>
  </detail>
</doc>

文書C

<doc>
  <name>鈴木太郎</name>
  <namekana>すずきたろう</namekana>
  <detail>
    <date>2007年07月02日</date>
    <area>神奈川県横浜市港北区</area>
    <train></train>
    <taxi>1200円</taxi>
    <hotel>7500円</hotel>
  </detail>
</doc>

文書D

<doc>
  <name>佐藤花子</name>
  <namekana>さとうはなこ</namekana>
  <detail>
    <date></date>
    <area>東京都千代田区</area>
    <train>5600円</train>
    <taxi>2400円</taxi>
    <hotel>ホテル代不要</hotel>
  </detail>
</doc>

ソート条件ファイル

タクシー代(taxi)の安い順(昇順)にソートします。

ソート式
OCondition $date, val($taxi)

タクシー代(taxi)の安い順(昇順)にソートします。

ソート式
OCondition /doc/detail/date/text(), val(/doc/detail/taxi/text())

ソート結果イメージ

"name","namekana","date","train","taxi","hotel"
"田中愛子","たなかあいこ","2007年07月01日","7200円","1000円","8500円"
"鈴木太郎","すずきたろう","2007年07月03日",,"1200円","7800円"
"鈴木一郎","すずきいちろう","2007年07月02日","14200円","1820円","7800円"
"佐藤花子","さとうはなこ","2007年07月04日","5600円","2400円",

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

<doc>
<name>田中愛子</name><namekana>たなかあいこ</namekana>
<detail><date>2007年07月01日</date><area>神奈川県横浜市港北区</area>
<train>7200円</train><taxi>1000円</taxi><hotel>8500円</hotel></detail>
</doc>
<doc>
<name>鈴木太郎</name><namekana>すずきたろう</namekana>
<detail><date>2007年07月02日</date><area>神奈川県横浜市港北区</area>
<train></train><taxi>1200円</taxi><hotel>7500円</hotel></detail>
</doc>
<doc>
<name>鈴木一郎</name><namekana>すずきいちろう</namekana>
<detail><date>2007年07月02日</date><area>神奈川県横浜市港北区</area>
<train>14200円</train><taxi>1820円</taxi><hotel>7800円</hotel></detail>
</doc>
<doc>
<name>佐藤花子</name><namekana>さとうはなこ</namekana>
<detail><date></date><area>東京都千代田区</area>
<train>5600円</train><taxi>2400円</taxi><hotel>ホテル代不要</hotel></detail>
</doc>

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