Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Boa Tarde
Como usamos a Função MAX ?
por exemplo, preciso trazer o maior valor do campo proposta, porem quando eu rodo MAX(proposta) da erro de sintaxe.
Podem me ajudar
Vamos lá:
LEFT JOIN (VEI_PROPOSTA)
LOAD
EMP_REV_VEICULO,
MAX(PROPOSTA_VEI_PRO) AS MAXPROSP
RESIDENT VEI_PROPOSTA
GROUP BY EMP_REV_VEICULO;
Você deve verificar se o campo é numérico e se não contém valores nulos
Pode testar:
Max(Sum(VALOR_PROPOSTA))
Mas aqui cabe uma pergunta:
Isso é no script ou no UI?
Leia mais sobre Max() em - https://help.qlik.com/pt-BR/qlikview/November2017/Subsystems/Client/Content/Scripting/AggregationFun...
Você também pode tentar com RangeMax (variável)
Alem do que o ecolomer bem lembrou.
Para testar se o campo é numérico pode usar IsNum(Proposta). Se o resultado for -1, ok!
no script
Sim o Campo é numérico
No script você precisa usar o group by:
Temp:
LOAD * inline [
Customer|Product|OrderNumber|UnitSales|CustomerID
Astrida|AA|1|10|1
Astrida|AA|7|18|1
Astrida|BB|4|9|1
Astrida|CC|6|2|1
Betacab|AA|5|4|2
Betacab|BB|2|5|2
Betacab|DD
Canutility|DD|3|8
Canutility|CC
] (delimiter is '|');
Max:
LOAD Customer, Max(UnitSales) as MyMax Resident Temp Group By Customer;
Antes de Rodar o script
Apos rodar :
Faz o seguinte:
Faça seu load normal sem usar o max(), daí depois faz um resident pra calcular o max(). Exemplo:
TABELA_INICIAL:
LOAD
SEUS_DADOS
FROM SEU_BANCO;
LEFT JOIN (TABELA_INICIAL)
LOAD
COLUNA_AGRUPADORA, //ID_PROPOSTA, POR EXEMPLO
MAX(PROPOSTA) AS MAIOR_PROPOSTA
RESIDENT TABELA_INICIAL GROUP BY COLUNA_AGRUPADORA;