Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Example:

Image RemovedImage Added
Expand
title#afterChildren

Defines the exit separator between children and parent rows. This modifier has a string parameter. The default exit separator is:

  • "(" - for #beforeChildren

  • ")" - for #afterChildren

Expand
title
Code Block
JOIN#subtree#beforeChildren="<{"#afterChildren="}>"{X}

Can be used with: join.

Anchor
#all
#all

title

Example:

Image RemovedImage Added
Expand
title#all

Tells the aggregate function to include duplicate items. By defaults, functions that count values ignore duplicate items.

Expand
Code Block
SUM#all{X}
COUNT#all{X}

Can be used with: sumcountavg.

...

Example:

Image RemovedImage Added
Expand
title#children

Only process direct children of the current row.

Expand
title
Code Block
JOIN#children{X}
SUM#children{X}

Can be used with: arraysumcountavgjoin, min, max, medianpercentilequartile1quartile3values.

...

Example:

Image RemovedImage Added
Expand
title#distinct

#distinct with ARRAY

Makes array only produce an array of distinct values. A duplicate value won't be added more than once if this modifier is on.

Expand
title
Code Block
ARRAY#distinct{X}


#distinct with JOIN

Makes join only concatenate distinct values. A duplicate value won't be added more than once if this modifier is on. When used with arrays, removes undefined values and performs one-step flattening.

Modifiers #beforeChildren and #afterChildren don't work when this option is on. 

expand

title

Example:

Image RemovedImage Added
Code Block
JOIN#distinct{X}
JOIN#subtree#distinct{X}
Image RemovedImage Added
Code Block
JOIN#distinct{array}

Can be used with: join.

Anchor
#flatten
#flatten

...

Example:

Image RemovedImage Added
Expand
title#fromLevel

Specifies the position of the first row the aggregate function should take as input for a sequence.

Position is specified by an integer parameter denoted as n below:

  • Positive values mean the absolute depth of the row in the structure, e.g. n=1 means root.

  • Negative values mean the depth relative to current row, e.g. n=-1 is the current item's direct parent.

  • Default is 1.

  • Zero means the "super-root" row, which is a fictional parent of all the top rows. It can be used to get the value of another aggregate function applied to the whole structure. For example, JOIN#fromLevel=0{MIN{due_date}} will provide a sequence of the earliest due dates, starting from the earliest throughout the whole structure, then the earliest throughout the root tree this item is in, and so on.

This modifier does not work with any tree types except #ancestors.

Expand
title
Code Block
JOIN#fromLevel=-1{X}
JOIN#fromLevel=2 {X}

Can be used with: arrayjoinmedianpercentilequartile1quartile3values.

...

Example:

Image RemovedImage Added
Expand
title#leaves

Only process leaves (items without children) in the subtree of the current row.

Expand
title
Code Block
JOIN#leaves{X}
SUM#leaves{X}

Can be used with: arraysumcountavgjoin, min, max, medianpercentilequartile1quartile3values.

...

Example:

Image RemovedImage Added
Expand
title#level

When used with PARENT, specifies the position of the parent that possesses value. 

Position is specified by an integer parameter denoted as n below:

  • Positive values mean the absolute depth of the row in the structure: n=1 means root element, n=2 means an element at the 2nd level, etc.

  • Negative values mean the depth relative to the current row: n=-1 is the current item's direct parent.

  • Default is -1.

  • Zero means the "super-root" row, which is a fictional parent of all the top rows. It can be used to get the value of another aggregate function applied to the whole structure. For example, PARENT#level=0{SUM{story_points}} means total story points for the whole structure (including subtrees for all roots).

When used with SUM with the #preceding modifier, this specifies the level at which the values should be aggregated.

expand

title
Code Block
PARENT#level=-1{X}   // default one
PARENT#level=-2{X}   // "grandparent"
PARENT#level=1 {X}   // root row
PARENT#level=2 {X}

Can be used with: parentsum (together with #preceding), count (together with #preceding), avg (together with #preceding).

...

title

Example:

preceding modifierImage Removed

image-20240617-161918.pngImage Added

Expand
title#preceding

Can be used with SUM to calculate a numeric total of the current item and all items above it in the structure.

Can be combined with the following modifiers:

  • #baseLevel - the sum restarts whenever the specified level is reached

  • #levels - the sum will only include the levels specified

  • #all - items that appear more than once will be counted multiple times

Expand
Code Block
SUM#preceding{X}
SUM#preceding#baseLevel=1{X}
SUM#preceding#levels="1,3"{X}

Can be used with: sum, count, avg.

...

Example:

Image Removedimage-20240617-162042.pngImage Added
Expand
title#reverse

Reverses the order of row processing.

Expand
title
Code Block
JOIN#reverse{X}

Can be used with: arrayjoin.

...

Example:

Image Removedimage-20240617-162210.pngImage Added
Expand
title#separator

Defines the separator for string joining. This modifier has a string parameter. The default is ", ".

Expand
title
Code Block
JOIN#separator="->"{X}

Can be used with: join.

Anchor
#strict
#strict

Example:

Image Removedimage-20240617-162348.pngImage Added
Expand
title#strict

Do not process the current row item as part of the aggregation.

Cannot be used together with #children, #ancestors or #leaves, since these already exclude the current row.

Expand
title
Code Block
JOIN#strict{X}
SUM#strict{X}

Can be used with: arraysumcountavgjoin, min, max, medianpercentilequartile1quartile3values.

...

Example:

Image Removedimage-20240617-162520.pngImage Added
Expand
title#subtree

Process the whole subtree of the current row. This is the default behavior for sumcountavg, min, max .

Expand
title
Code Block
JOIN#subtree{X}

Can be used with: arraysumcountavgjoin, min, max, medianpercentilequartile1quartile3values.

...

title

Example:

Image Removedimage-20240617-162642.pngImage Added
Expand
title#toLevel

Specifies the position of the last row the aggregate function should take as input for a sequence.

Position is specified by an integer parameter denoted as n below:

  • Positive values mean the absolute depth of row in the structure, e.g. n=1 means root.

  • Negative values mean the depth relative to current row, e.g. n=-1 is the current item's direct parent.

  • 0 means current row.

  • Default is 0.

This modifier does not work with any tree types except #ancestors.

Expand
Code Block
JOIN#toLevel=-1{X}
JOIN#toLevel=2 {X}

Can be used with: arrayjoin, medianpercentilequartile1quartile3values.

...

Example:

Image Removedimage-20240617-162807.pngImage Added
Expand
title#truthy

Only count row if the subexpression produces a truthy value.

Expand
title
Code Block
COUNT#truthy{X}

Can be used with: count.