Como gerar uma coluna de classificação usando média de colunas rankeadas.
Bom dia, preciso de ajuda para gerar uma coluna de classificação usando como referência quatro colunas que tem resultado de Rank.
SELECT SUB.*
...
FROM
(
SELECT pcusuari.codusur
, pcusuari.nome
, NVL (vendas.vlvenda, 0) vlvenda
, ((ROUND (NVL (vendas.vlvenda, 0) / NVL (vendas.custofin, 0), 2) -1) * 100) margem
, ((ROUND (NVL (vendas.vlvenda, 0) / NVL (vendas.custofin, 0), 2) -1) * 2) margem_2
, (((ROUND (NVL (vendas.vlvenda, 0) / NVL (vendas.custofin, 0), 2) -1) * 2) / 100) * (NVL (vendas.vlvenda, 0)) Valor_Margem
, (NVL (vendas.vlvenda, 0) * 0.002) Comissao
, (NVL (vendas.vlvenda, 0) * 0.002)
...
, RANK() over(order by (vlvenda) desc) rank_vendas
, RANK() over(order by (qtmix) desc) rank_mix
, RANK() over(order by ((ROUND (NVL (vendas.vlvenda, 0) / NVL (vendas.custofin, 0), 4) -1) * 100) desc) rank_margem
, RANK() over(order by (round((NVL (vendas.qtcli, 0) /
FROM pcusuari
, pcsuperv
...
)SUB
where rank_vendas <= 20
and rank_mix <=20
and rank_margem <=20
and rank_percpositiv <=20;
NOME VLVENDA VALOR_MARGEM TOTAL_RCA MIX RANK_VENDAS RANK_MIX RANK_MARGEM RANK_PERCPOSITIV rank_geral
jose 277.865,84 500,16 1.055,89 348 1 6 13 9
joao 207.160,02 455,75 870,07 552 2 2 10 2
maria 156.588,73 344,50 657,67 458 3 3 11 8
fatima 137.372,05 302,22 576,96 393 4 4 8 1
manoel 128.688,79 566,23 823,61 622 5 1 1 3
dirce 126.900,94 329,94 583,74 357 6 5 5 4
SELECT SUB.*
...
FROM
(
SELECT pcusuari.codusur
, pcusuari.nome
, NVL (vendas.vlvenda, 0) vlvenda
, ((ROUND (NVL (vendas.vlvenda, 0) / NVL (vendas.custofin, 0), 2) -1) * 100) margem
, ((ROUND (NVL (vendas.vlvenda, 0) / NVL (vendas.custofin, 0), 2) -1) * 2) margem_2
, (((ROUND (NVL (vendas.vlvenda, 0) / NVL (vendas.custofin, 0), 2) -1) * 2) / 100) * (NVL (vendas.vlvenda, 0)) Valor_Margem
, (NVL (vendas.vlvenda, 0) * 0.002) Comissao
, (NVL (vendas.vlvenda, 0) * 0.002)
...
, RANK() over(order by (vlvenda) desc) rank_vendas
, RANK() over(order by (qtmix) desc) rank_mix
, RANK() over(order by ((ROUND (NVL (vendas.vlvenda, 0) / NVL (vendas.custofin, 0), 4) -1) * 100) desc) rank_margem
, RANK() over(order by (round((NVL (vendas.qtcli, 0) /
FROM pcusuari
, pcsuperv
...
)SUB
where rank_vendas <= 20
and rank_mix <=20
and rank_margem <=20
and rank_percpositiv <=20;
NOME VLVENDA VALOR_MARGEM TOTAL_RCA MIX RANK_VENDAS RANK_MIX RANK_MARGEM RANK_PERCPOSITIV rank_geral
jose 277.865,84 500,16 1.055,89 348 1 6 13 9
joao 207.160,02 455,75 870,07 552 2 2 10 2
maria 156.588,73 344,50 657,67 458 3 3 11 8
fatima 137.372,05 302,22 576,96 393 4 4 8 1
manoel 128.688,79 566,23 823,61 622 5 1 1 3
dirce 126.900,94 329,94 583,74 357 6 5 5 4
Guilherme Rocha
Curtidas 0