Nesta postagem, você encontrará a função de classificação () nos bancos de dados Oracle, que permite determinar a classificação de uma linha de um determinado conjunto de linhas.
Função de classificação Oracle
A função rank () no Oracle nos permite atribuir uma classificação a cada linha em um conjunto de resultados. A função atribui a mesma classificação a todas as linhas com valores semelhantes e adiciona um número à próxima linha na classificação.
Podemos expressar a sintaxe para a função, como mostrado no seguinte:
Classificação () sobre (A função suporta os seguintes parâmetros:
Exemplos de função Oracle Rank ()
Para ilustrar como usar a função rank () no Oracle, usaremos a tabela de funcionários coleta padrão.
Considere a tabela a seguir:
Selecione First_Name, Last_Name, Salário, Job_Id dos funcionários Emp;Resultado:
Exemplo 1: Usando a função de classificação para determinar a classificação
Este exemplo demonstra o uso da função de classificação () na determinação da classificação de cada funcionário na tabela.
Selecione First_Name, Last_Name, Salário, Job_id, Rank () Over (Ordem por Salário ASC) como classificaçãoNa consulta fornecida, usamos a função de classificação para atribuir uma classificação a cada linha na tabela de funcionários com base nos valores na coluna salarial.
A função usa a cláusula "Order by" para especificar a ordem em que as linhas são classificadas. Em nosso exemplo, usamos a ordem ascendente com base no valor da coluna salarial.
A função atribui a linha com o salário mais baixo, uma classificação de 1 e a classificação salarial mais alta de n, onde n representa o número de linhas na tabela.
Como você pode notar, as linhas com valores salariais semelhantes recebem a mesma classificação.
Exemplo 2: Usando a função de classificação com cláusula de ordem por ordem
Suponha que desejemos agrupar as linhas com base no JOB_ID e depois atribuir uma classificação às linhas em cada partição.
Podemos executar uma consulta como mostrado no seguinte:
Selecione First_Name, Last_Name, Salário, Job_id, Rank () Over (A cláusula de partição por.
A função de classificação atribui uma classificação a cada linha em cada partição com o menor salário em cada partição que recebe uma classificação de 1 e o salário mais alto em cada partição que recebe uma classificação de n (onde n é o número de linhas na partição).
Resultado:
Conclusão
Neste tutorial, você aprendeu a usar a função de classificação do Oracle (). Embora a função rank () possa ser benéfica, pode levar a um desempenho de desempenho, especialmente ao trabalhar com consultas complexas e grandes conjuntos de dados.