Ir para o conteúdo

Transforme as suas conexões em um bônus de fim de ano com o nosso novo Programa de Indicação de Clientes! Saiba mais

Esta documentação é para a versão 4 e posterior do App Builder, o novo nome do Vinyl. Acesse a documentação do Vinyl aqui.

Função de Banco de Dados Mvsql - Rank()

Resumo

Numera sequencialmente cada linha dentro de um conjunto, ordenada por uma ou mais colunas, começando em 1. Esta função requer o ORDER BY modificador e também suporta o PARTITION BY modificador. Se o ORDER BY não é único dentro do conjunto, as linhas duplicadas são indexadas com a mesma classificação, o próximo índice pulará a lacuna (como colocações em uma competição).

Sintaxe

RANK(ORDER BY <column 1>) RANK(PARTITION BY <column 2> ORDER BY <column 1>)

Parâmetros

Modificador

Esta função requer o ORDER BY modificador e suporta o PARTITION BY modificador.

Coluna 1

Uma referência a uma coluna.

Coluna 2

Uma referência a uma coluna.

Devoluções

Um número sequencial atribuído a cada linha no conjunto de resultados da consultar. Se houver um conflito, ambos os registros recebem o mesmo número de índice, o próximo registro irá ignorá-los (como colocações em um torneio), o que significa que pode haver lacunas entre os índices. ORDER BY modificador é necessário, e o PARTITION BY modificador é opcional e também suportado. Dependendo dos modificadores usados na sintaxe, os resultados serão classificados de acordo.

Exemplos

Para os exemplos fornecidos abaixo, assumiremos que os seguintes dados estão disponíveis para consultar:

CustomerId ContactId Adicionado em
1 1 01/04/2023
1 2 02/04/2023
2 3 01/04/2023
2 3 03/04/2023
  1. RANK(ORDER BY AddedOn)retorna:

    Classificação CustomerId ContactId Adicionado em
    1 1 1 01/04/2023
    3 1 2 02/04/2023
    1 2 3 01/04/2023
    4 2 3 03/04/2023
  2. RANK(PARTITION BY CustomerId ORDER BY AddedOn)retorna:

    Classificação CustomerId ContactId Adicionado em
    1 1 1 01/04/2023
    2 1 2 02/04/2023
    1 2 3 01/04/2023
    2 2 3 03/04/2023
  3. RANK(PARTITION BY ContactId, Year(AddedOn) ORDER BY CustomerId, AddedOn)retorna:

    Classificação CustomerId ContactId Adicionado em
    1 1 1 01/04/2023
    1 1 2 02/04/2023
    1 2 3 01/04/2023
    2 2 3 03/04/2023