Saltar al contenido principal
Workday User Guide
Última actualización: 2023-06-23
MIN

MIN

Descripción

MIN
es una función de agregado de ventanas que divide las filas en grupos, las ordena por un campo y devuelve el valor mínimo (más bajo) del grupo.
El
PARTITION BY
determina qué campos se utilizarán para dividir un conjunto de filas de entrada en grupos. El
ORDER BY
determina cómo ordenar las filas en la partición.
Workday separa las filas de entrada en grupos según los campos de partición, ordena las filas según los campos de ordenación y, a continuación, calcula la expresión agregada (mínimo para esta función) en cada grupo.

Sintaxis

MIN
(
input_field
)
OVER
(
PARTITION BY
partitioning_field
[,
partitioning_field
]
ORDER BY
ordering_field
[ASC | DESC] [,
ordering_field
[ASC | DESC]]
RANGE
BETWEEN
value
PRECEDING
AND
CURRENT ROW
|
ROWS
win_boundary
|
BETWEEN
win_boundary
AND
win_boundary
)
where
win_boundary
can be:
UNBOUNDED PRECEDING
value
PRECEDING
UNBOUNDED FOLLOWING
value
FOLLOWING
CURRENT ROW

Valor devuelto

El valor devuelto es el mismo tipo de campo que el valor de entrada.

Parámetros de entrada

input_field
Es obligatorio. El campo en el que se va a realizar la función de agregado. Puede utilizar cualquier campo numérico o un campo de moneda.
OVER()
Obligatorio
OVER
debe utilizarse en un
MIN
expresión
PARTICIÓN POR
campo_partición
Es obligatorio. Utilizar el
PARTITION BY
para especificar uno o varios campos que se utilizarán para dividir un grupo de filas de entrada. Puede especificar cualquier tipo de campo excepto Moneda. Ejemplo: especifica el campo Mes como campo de partición, por lo que Workday agrupa en una sola partición todos los registros que tienen el mismo valor para Mes.
ORDER BY
ordering_field
Es obligatorio. Utilizar el
ORDER BY
para especificar cómo ordenar las filas de entrada en la partición utilizando los valores del campo especificado dentro de cada partición. Puede especificar cualquier tipo de campo excepto Moneda. Sin embargo, debe utilizar un tipo de campo numérico, como Entero o Numérico cuando utilice el campo
RANGE
cláusula
Puede utilizar el
DESC
o
ASC
palabras clave para ordenar en orden descendente (valores de mayor a menor, los valores NULL son los últimos) o ascendente (valores de menor a mayor, los valores NULL son los primeros) para cada campo de ordenación. Si no especifica un criterio de ordenación para un campo de ordenación, Workday ordena automáticamente las filas en orden ascendente.
FILAS | RANGO
Es obligatorio. El
ROWS
y
RANGE
Las cláusulas definen el número específico de filas (en relación con la fila actual) dentro de la partición especificando un marco de ventana. El marco de la ventana se define especificando los puntos inicial y final dentro de la partición, conocidos como límites de ventana. El marco de ventana es el conjunto de filas de entrada de cada partición sobre las que se calcula la expresión de agregado (mínimo para esta función). El marco de la ventana puede incluir una, varias o todas las filas de la partición.
Ambos
ROWS
y
RANGE
especificar el rango de filas relativo a la fila actual, pero
RANGE
opera lógicamente en valores (asociación lógica) y
ROWS
opera físicamente en las filas del conjunto de datos (asociación física).
RANGE
limita el marco de la ventana para que contenga filas que tengan sus valores dentro del rango especificado, en relación con el valor actual.
ROWS
limita el marco de la ventana para que contenga filas que estén físicamente al lado de la fila actual.
Utilizar
RANGE
para definir límites de ventana absolutos, como los últimos 3 meses o el año hasta la fecha. Cuando utiliza
RANGE
, el
ORDER BY
La cláusula debe utilizar un tipo de campo numérico, como Entero o Numérico.
Ejemplo: suponga que tiene un campo Integer denominado MonthNum que representa el número de mes del año (valores del 1 al 12). Para especificar todos los valores de los últimos 3 meses, ordene por MonthNum y utilice
RANGE BETWEEN 2 PRECEDING AND CURRENT ROW
. Esta cláusula RANGE incluye el mes actual y los dos meses anteriores, lo que da como resultado un total de tres meses.
Cuando publica un conjunto de datos que contiene una función de ventana mediante
RANGE
, el número de filas de la ventana debe ser 1000 o menos. Si una ventana en particular supera las 1000 filas, el trabajo de publicación falla.
win_boundary
Es obligatorio. Los límites de la ventana definen los puntos inicial y final del marco de la ventana. Los límites de la ventana son relativos a la fila actual.
A
PRECEDING
define un límite de ventana que es inferior a la fila actual (el número de filas que se incluirán antes de la fila actual). El
FOLLOWING
define un límite de ventana que es mayor que la fila actual (el número de filas que se incluirán después de la fila actual).
Si especifica solo un límite de ventana, Workday utiliza la fila actual como el otro límite en el marco de la ventana (el límite superior o inferior en función de la sintaxis de la expresión). El
UNBOUNDED
La palabra clave incluye todas las filas en la dirección especificada. Cuando necesite especificar el inicio y el final de un marco de ventana, utilice el
BETWEEN
y
AND
palabras clave
Al especificar un número específico de filas, el
valor
debe ser 100 o menos.
Ejemplo:
ROWS 2 PRECEDING
significa que la ventana tiene un tamaño de 3 filas, comenzando con las 2 filas anteriores hasta la fila actual incluida.
Ejemplo:
ROWS UNBOUNDED FOLLOWING
significa que la ventana comienza con la fila actual e incluye la fila actual y todas las filas que siguen a la fila actual.

Ejemplos

Ejemplo: tiene un conjunto de datos con estas filas y campos.
Organización de supervisión
Trimestre
Nombre
Cambio de compensación
Marketing
2019-Q1
Goh
2000.00
Marketing
2019-Q1
Freeman
1000,00
Marketing
2019-Q1
Herrero
2500,00
Consultoría
2019-Q1
Gomez
5000,00
Consultoría
2019-Q1
Kimura
3000.00
Consultoría
2019-Q1
Fitz
3500,00
Consultoría
2019-Q2
Gomez
0
Consultoría
2019-Q2
Kimura
2000.00
Consultoría
2019-Q2
Fitz
1500,00
Puede calcular el cambio más bajo en la compensación (campo
Cambio de compensación
) para cada organización de supervisión en cada trimestre.
Para asegurarse de que Workday devuelva el mismo valor para todas las filas de una partición, ordene las filas en orden ascendente (
ASC
) por el mismo campo que el campo de entrada, de modo que el cambio de compensación más bajo aparezca primero en cada partición.
Utilice esta expresión en el campo
Cambio mínimo de compensación
:
MIN([Comp Change]) OVER( PARTITION BY [Supervisory Org], [Quarter] ORDER BY [Comp Change] ASC ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING )
Obtiene los siguientes resultados:
Organización de supervisión
Trimestre
Nombre
Cambio de compensación
Cambio de compensación mínima
Consultoría
2019-Q1
Kimura
3000.00
3000.00
Consultoría
2019-Q1
Fitz
3500,00
3000.00
Consultoría
2019-Q1
Gomez
5000,00
3000.00
Consultoría
2019-Q2
Gomez
0
0
Consultoría
2019-Q2
Fitz
1500,00
0
Consultoría
2019-Q2
Kimura
2000.00
0
Marketing
2019-Q1
Freeman
1000,00
1000,00
Marketing
2019-Q1
Goh
2000.00
1000,00
Marketing
2019-Q1
Herrero
2500,00
1000,00