Função do SQL Server Last_Value

Função do SQL Server Last_Value
Este tutorial visa orientá -lo para entender a função last_value () no SQL Server. A função permite buscar o último valor em um conjunto ordenado de valores ou uma partição.

Função Sintaxe

Abaixo está a sintaxe da função last_value.

Last_value ([scalar_expression]) [Ignore NULLS | Respeito nulas]
Sobre ([partition_by_clause] order_by_clause [robs_range_clause]))

Os argumentos da função são:

  1. escalar_expression - isso define o valor a ser retornado. Esta pode ser uma coluna existente, uma subconsulta ou uma expressão que retorne a um único valor.
  2. Ignorar nulas - isso permite que a função ignore os valores nulos no conjunto dado ao determinar o último valor em uma partição
  3. Respeito nulo - este é o oposto da cláusula de ignorar nulo. Força a função a considerar valores nulos ao determinar o último valor em uma partição.
  4. Partição por - os divide as fileiras de um determinado resultado em várias partições. A função last_value é então aplicada a essas partições. Se a cláusula partition_by estiver faltando, a função tratará o conjunto de resultados como um único grupo.
  5. Ordem por - isso determina em que ordem as linhas em uma determinada partição seguem.
  6. ROWS_RANGE - Esta cláusula limita as linhas em uma determinada partição. Isso funciona definindo um valor inicial e final.

A função retorna o tipo de escalar_expressão especificado.

Usando a função last_value em um conjunto de resultados

Suponha que tenhamos uma tabela como mostrado:

Podemos aplicar a função last_value () em um conjunto de resultados, conforme mostrado na consulta de exemplo abaixo:

Selecione
NOME DO SERVIDOR,
ENDEREÇO ​​DO SERVIDOR ,
MÉTODO DE COMPRESSÃO,
TAMANHO NO DISCO,
last_value (size_on_disk) sobre (
Ordem por size_on_disk intervalo entre precedentes ilimitados e seguidores ilimitados) maior
de
Entradas e;

Valores resultantes:

Usando a função last_value em uma partição

Também podemos aplicar a função last_value () sobre a partição, como mostrado no exemplo abaixo:

Selecione
NOME DO SERVIDOR,
ENDEREÇO ​​DO SERVIDOR ,
MÉTODO DE COMPRESSÃO,
TAMANHO NO DISCO,
last_value (size_on_disk) sobre (partição por compressão_method
Ordem por size_on_disk intervalo entre precedentes ilimitados e seguidores ilimitados) maior
de
Entradas e;

Nesse caso, os dados são agrupados em várias partições com base no método de compressão.

O valor resultante é como mostrado:

Na tabela acima, temos cinco partições, com o valor máximo em cada partição exibida na maior coluna.

Conclusão

Neste tutorial, você aprendeu a usar a função SQL Server last_value () para obter o último valor em um conjunto ou partição ordenados.