Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Eduardo Barros_90473

Ordenar resultado PHP

Recommended Posts

Bom dia,

 

Tenho o seguinte problema:

 

Tenho uma consulta normal no banco que me retorna duas colunas, dessas duas colunas faço um conta no proprio php e gero uma terceira coluna com o resultado das outras duas.

 

Como faço para ordenar todas as colunas pelo resultado da terceira?

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Essa é minha consulta:

SELECT NET_TERMINAIS2.COD_NODE,
SUM(CASE WHEN NET_TERMINAIS2.TM_STATUS = 'Online' AND NET_TERMINAIS2.TM_TX < 40 OR NET_TERMINAIS2.TM_TX > 50 THEN 1 END) /
SUM(CASE WHEN NET_TERMINAIS2.TM_STATUS = 'Online' THEN 1 ELSE 0 END) as TX,
SUM(CASE WHEN NET_TERMINAIS2.TM_STATUS = 'Online' AND NET_TERMINAIS2.CMTS_SNR < 23 THEN 1 ELSE 0 END) / 
SUM(CASE WHEN NET_TERMINAIS2.TM_STATUS = 'Online' THEN 1 ELSE 0 END) AS SNR_UP,
SUM(CASE WHEN NET_TERMINAIS2.TM_STATUS = 'Online' AND NET_TERMINAIS2.TM_SNR < 35 THEN 1 ELSE 0 END) /
SUM(CASE WHEN NET_TERMINAIS2.TM_STATUS = 'Online' THEN 1 ELSE 0 END) AS SNR_DOWN,
SUM(CASE WHEN NET_TERMINAIS2.TM_STATUS = 'Online' AND NET_TERMINAIS2.CMTS_FEC_UP_N_CORRIGIDO > 1.00 THEN 1 ELSE 0 END) /
SUM(CASE WHEN NET_TERMINAIS2.TM_STATUS = 'Online' THEN 1 ELSE 0 END) AS FEC_N,
SUM(CASE WHEN NET_TERMINAIS2.TM_STATUS = 'Online' AND NET_TERMINAIS2.CMTS_FEC_UP_CORRIGIDO > 5.00 THEN 1 ELSE 0 END) /
SUM(CASE WHEN NET_TERMINAIS2.TM_STATUS = 'Online' THEN 1 ELSE 0 END) AS FEC_C,
SUM(CASE WHEN NET_TERMINAIS2.CI_SIGLA = 'CWB C' THEN 1 ELSE 0 END) AS TOTAIS
	FROM NET_TERMINAIS2
	GROUP BY NET_TERMINAIS2.COD_NODE
	ORDER BY $arquivo DESC, NET_TERMINAIS2.COD_NODE
if($data->TX == ''){
				$peso_TX = '0';
				}elseif($data->TX > 0.50){
				$peso_TX = '0.50';
				}else{
				$peso_TX = '0';
				}
				
				if($data->FEC_N == 0){
				$peso_FEC_N = '0';
				}else{
				$peso_FEC_N = '1.00';
				}
				
				if($data->FEC_C == 0){
				$peso_FEC_C = '0';
				}else{
				$peso_FEC_C = '1.00';
				}
				
				if($data->SNR_UP == 0){
				$peso_SNR_UP = '0';
				}else{
				$peso_SNR_UP = '0.25';
				}
				
				if($data->SNR_DOWN == 0){
				$peso_SNR_DOWN = '0';
				}else{
				$peso_SNR_DOWN = '0.25';
				}

 

Esse acima são os valores resultantes que eu somo


$soma = $peso_TX + $peso_FEC_N + $peso_FEC_C + $peso_SNR_UP + $peso_SNR_DOWN;

Esse é o valor que eu queria que ordenasse toda a consulta...



por que não gera essa coluna no propio sql e orderna por lá mesmo?

Da uma olhada na query

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.