対象のデータを任意のキーでグループ化して集計します。
対象データの値でグループ化できます。
例
従業員氏名(name)でグループ化したい場合
グループ式 | $name |
結果:文書AとCが1つのグループ、文書BとDが1つのグループとして扱われます。
参考
文字列でグループ化を行う場合、文字列の先頭20バイトをキーにしてグループ化します。キー指定が示すデータ中の値が20バイトよりも大きくなる可能性がある場合は、20バイト目以降が異なる文字列であるのに同一グループとみなされることがあります。このような場合は、キー指定にsubstr関数を使って、文字列を取得したい開始位置と先頭から何文字をキーとするかを指定できます。
substr関数の詳細については、“A.8.1 substr関数”を参照してください。
例
出張エリア(area)でグループ化したい場合
グループ式 | substr($area,0,30) |
結果:出張エリアの先頭から30文字でグループ化します。
対象データの値を数値とみなしてグループ化します。数値でグループ化するには、グループ式のキー指定にval関数を指定します。val関数の詳細については、“A.2.1 グループ式の書式”を参照してください。
例
地域コード(region_code)が同じ数値のデータをグループ化したい場合
グループ式 | val($region_code) |
結果:文書A、CおよびDが1つのグループ、文書BとDが1つのグループとして扱われます。
複数のキーでグループ化するには、グループ式に“,”で区切って複数のキー指定を指定します。それぞれのキー指定は、数値でも文字列でもかまいません。複数のキー指定を指定すると、指定したすべてのキー指定の値が同じであるデータを1つのグループとして扱います。キー指定は8個まで指定できます。
例
出張エリア(area)と出張日(date)でグループ化します
グループ式 | /doc/detail/area/text() 出張エリア,/doc/date/text() 出張日 |
結果:文書AとBが1つのグループ、文書Cが1つのグループ、文書Dが1つのグループとして扱われます。