PU_MAX


Applies to: CELONIS 4.0 CELONIS 4.2 CELONIS 4.3 CELONIS 4.4

Description

Calculates the maximum of the specified column for each element of the given parent table.
Like the regular MAX operator, the column can either be an INT, FLOAT or DATE column. The data type of the result is the same as the input column data type.
If no value in the child table exists for the element in the parent table (either because all values of the child table column are filtered out, or because no corresponding value exists in the first place), NULL will be returned.

Вычисляет максимум указанного столбца для каждого элемента данной родительской таблицы.
Как и обычный оператор MAX, столбец может быть столбцом INT, FLOAT или DATE. Тип данных результата совпадает с типом данных входного столбца.
Если в элементе родительской таблицы не существует значения в дочерней таблице (либо из-за того, что все значения столбца дочерней таблицы отфильтрованы, либо из-за отсутствия соответствующего значения в первую очередь), будет возвращено значение NULL.

Syntax


PU_MAX ( parent_table, child_table.column [, filter_expression] )

Examples

Calculate the maximum of the case table values for each company code:

Вычислите максимальные значения таблицы наблюдений для каждой балансовой единицы:
Query
Column1

"companyDetail"."companyCode"

Column2

PU_MAX("companyDetail", "caseTable"."value")

Input
caseTable

caseId : INT
companyCode : STRING
value : INT
1
'001'
600
2
'001'
400
3
'001'
200
4
'002'
300
5
'002'
300
6
'003'
200

companyDetail

companyCode : STRING
country : STRING
'001''DE'
'002''DE'
'003''US'


Foreign Keys

caseTable.companyCodecompanyDetail.companyCode

Output
Result

Column1 : STRING
Column2 : INT
'001'
600
'002'
300
'003'
200




Calculate the maximum of the case table values for each company code. Only consider cases with an ID larger than 2:

Вычислите максимальные значения таблицы наблюдений для каждой балансовой единицы. Рассматривайте только случаи с идентификатором больше 2:
Query
Column1

"companyDetail"."companyCode"

Column2

PU_MAX("companyDetail", "caseTable"."value", "caseTable"."caseID" > 2)

Input
caseTable

caseId : INT
companyCode : STRING
value : INT
1
'001'
600
2
'001'
400
3
'001'
200
4
'002'
300
5
'002'
300
6
'003'
200

companyDetail

companyCode : STRING
country : STRING
'001''DE'
'002''DE'
'003''US'


Foreign Keys

caseTable.companyCodecompanyDetail.companyCode

Output
Result

Column1 : STRING
Column2 : INT
'001'
200
'002'
300
'003'
200




Calculate the maximum of the case table values for each company code. Only consider cases with an ID larger than 3. All case table values for companyCode '001' are filtered out, which means that in this case, NULL is returned:

Вычислите максимальные значения таблицы наблюдений для каждой балансовой единицы. Рассматривать только дела с идентификатором больше 3. Все значения таблицы дел для companyCode '001' отфильтрованы, что означает, что в этом случае возвращается NULL:
Query
Column1

"companyDetail"."companyCode"

Column2

PU_MAX("companyDetail", "caseTable"."value", "caseTable"."caseID" > 3)

Input
caseTable

caseId : INT
companyCode : STRING
value : INT
1
'001'
600
2
'001'
400
3
'001'
200
4
'002'
300
5
'002'
300
6
'003'
200

companyDetail

companyCode : STRING
country : STRING
'001''DE'
'002''DE'
'003''US'


Foreign Keys

caseTable.companyCodecompanyDetail.companyCode

Output
Result

Column1 : STRING
Column2 : INT
'001'
null
'002'
300
'003'
200




Example over three tables: For each entry in table B, calculate the maximum of the values that are smaller than 500 in table C. Tables B and C do not have a direct connection, but are connected via table A:

Пример для трех таблиц: Для каждой записи в таблице B вычислите максимум значений, которые меньше 500 в таблице C. Таблицы B и C не имеют прямого соединения, но связаны через таблицу A:
Query
Column1

"B"."B_KEY"

Column2

PU_MAX("B", "C"."VALUE", "C"."VALUE" <500)

Input
A

B_KEY : INT
C_KEY : STRING
VALUE : INT
1
'A'
100
1
'B'
200
2
'C'
300
2
'D'
400
3
'E'
500
3
'F'
600

B

B_KEY : INT
1
2

C

C_KEY : STRING
VALUE : INT
'A'
400
'A'
100
'A'
200
'B'
100
'C'
200
'D'
500


Foreign Keys

C.C_KEYA.C_KEY
B.B_KEYA.B_KEY

Output
Result

Column1 : INT
Column2 : INT
1
400
2
200





Содержание

  1. Data Types
  2. DATE
  3. FLOAT
  4. INT
  5. STRING
  6. Functions
  7. Aggregation Functions
  8. GLOBAL
  9. Pull Up Aggregation Functions
  10. PU_AVG
  11. PU_COUNT
  12. PU_COUNT_DISTINCT
  13. PU_FIRST
  14. PU_LAST
  15. PU_MAX
  16. PU_MEDIAN
  17. PU_MIN
  18. PU_QUANTILE
  19. PU_SUM
  20. Standard Aggregation Functions
  21. AVG
  22. COUNT
  23. COUNT_TABLE
  24. COUNT DISTINCT
  25. MAX
  26. MEDIAN
  27. MIN
  28. QUANTILE
  29. STDEV
  30. SUM
  31. TRIMMED_MEAN
  32. VAR
  33. Moving Aggregation Functions
  34. MOVING_AVG
  35. MOVING_COUNT
  36. MOVING_COUNT_DISTINCT
  37. MOVING_MAX
  38. MOVING_MEDIAN
  39. MOVING_MIN
  40. MOVING_STDEV
  41. MOVING_SUM
  42. MOVING_TRIMMED_MEAN
  43. RUNNING_TOTAL
  44. HOUR_NOW
  45. TODAY
  46. DATE_BETWEEN
  47. DAYS_BETWEEN
  48. HOURS_BETWEEN
  49. MILLIS_BETWEEN
  50. MINUTES_BETWEEN
  51. MONTHS_BETWEEN
  52. SECONDS_BETWEEN
  53. WORKDAYS_BETWEEN
  54. YEARS_BETWEEN
  55. ADD_DAYS
  56. ADD_HOURS
  57. ADD_MILLIS
  58. ADD_MINUTES
  59. ADD_MONTHS
  60. ADD_SECONDS
  61. ADD_WORKDAYS
  62. ADD_YEARS
  63. CALENDAR_WEEK
  64. DATE_MATCH
  65. DAY
  66. DAY_OF_WEEK
  67. HOURS
  68. MILLIS
  69. MINUTES
  70. MONTH
  71. QUARTER
  72. REMAP_TIMESTAMP
  73. SECONDS
  74. TO_TIMESTAMP
  75. YEAR
  76. DateTime Rounding Functions
  77. ROUND_DAY
  78. ROUND_HOUR
  79. ROUND_MINUTE
  80. ROUND_MONTH
  81. ROUND_QUARTER
  82. ROUND_SECOND
  83. ROUND_WEEK
  84. ROUND_YEAR
  85. DECISION_TREE
  86. KMEANS
  87. LINEAR_REGRESSION
  88. Math Functions
  89. ABC
  90. ABS
  91. CEIL
  92. FLOOR
  93. LOG
  94. POWER
  95. ROUND
  96. SQRT
  97. SQUARE
  98. ISNULL
  99. Process Functions
  100. ACTIVATION_COUNT
  101. CALC_CROP
  102. CALC_CROP_TO_NULL
  103. CALC_REWORK
  104. CALC_THROUGHPUT
  105. MATCH_PROCESS
  106. PROCESS_ORDER
  107. PROCESS EQUALS
  108. SOURCE / TARGET
  109. VARIANT
  110. Statistic Functions
  111. QNORM
  112. ZSCORE
  113. CONCAT
  114. LEFT
  115. LEN
  116. LOWER
  117. LTRIM
  118. REVERSE
  119. RIGHT
  120. RTRIM
  121. STR_TO_INT
  122. SUBSTRING
  123. UPPER
  124. Operators
  125. CASE WHEN
  126. FILTER
  127. Math Operators
  128. Addition Operator
  129. Division Operator
  130. MODULO
  131. Multiplication Operator
  132. Subtraction Operator
  133. Predicate Operators
  134. IN
  135. LIKE
  136. Ссылки на мануалы