Ir para conteúdo

POWERED BY:

Arquivado

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

rdpacato

Ordenar resultado no UINION

Recommended Posts

Olá Motta tudo bom?

 

Cara, eu tenho uma dúvida... tem como eu priorizar um resultado primeiro que o outro?

 

Assim, tenho dois SELECTS unidos com um UNION, e queria que saísse primeiro o resultado do primeiro SELECT antes do UNION, depois o Outro e todos por data...

 

 

SELECT DISTINCT (Dispositivo.Numero) AS Dispositivo, 
			(SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Dispositivo.CodigoTecnologia) AS CodTecnologia, 
			(SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Dispositivo.CodigoAPNConfigurada) AS APNConfigurada, 
			(SIMCard.Numero) AS SIMCard, 
			(Linha.Numero) AS Linha, 
			(SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = SIMCard.CodigoOperadora) AS Operadora, 
			(SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = SIMCard.CodigoAPNProvisionada) AS APNProvisionada, 
			(SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = SIMCard.CodigoStatusSIMCard) AS StatusSIMCard, 
			string_agg((SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Processamento.CodigoFonteDados), '/' ORDER BY CodigoFonteDados) AS Fonte, 
			CASE WHEN SIMCard.dataAlteracao > Dispositivo.dataAlteracao OR Dispositivo.dataAlteracao IS NULL THEN SIMCard.dataAlteracao ELSE Dispositivo.dataAlteracao END AS DtAlteracao, 
			(Dispositivo.IMEI) AS IMEI, 
			(SIMCard.IMSI) AS IMSI, 
			(SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Linha.CodigoStatusLinha) AS StatusLinha, 
			(SIMCard.ConsumoDados) AS ConsDados, 
			(Processamento.MatriculaCadastro) AS Matricula 
			FROM SIMCard LEFT JOIN SIMCardDispositivo ON SIMCardDispositivo.SIMCard_Numero = SIMCard.Numero 
			LEFT JOIN Dispositivo ON Dispositivo.Numero = SIMCardDispositivo.Dispositivo_Numero 
			INNER JOIN Linha ON Linha.Numero = SIMCard.NumeroLinha 
			LEFT JOIN Processamento ON (Processamento.Codigo = SIMCard.CodigoProcessamento OR Processamento.Codigo = Dispositivo.CodigoProcessamento) 
			WHERE SIMCard.Numero = 89550332280000892281
			GROUP BY SIMCard, Dispositivo, Linha, CodTecnologia, APNConfigurada, CodigoOperadora, CodigoAPNProvisionada, StatusSIMCard, DtAlteracao, IMEI, IMSI, StatusLinha, ConsDados, Matricula 
			
			UNION ALL 

			SELECT DISTINCT (Historico.NumeroDispositivo) AS Dispositivo, 
			(SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Historico.CodigoTecnologia) AS CodTecnologia, 
			(SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Historico.CodigoAPNConfigurada) AS APNConfigurada, 
			(Historico.NumeroSIMCard) AS SIMCard, 
			(Historico.NumeroLinha) AS Linha, 
			(SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Historico.CodigoOperadora) AS Operadora, 
			(SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Historico.CodigoAPNProvisionada) AS APNProvisionada, 
			(SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Historico.StatusSIMCard) AS StatusSIMCard, 
			string_agg((SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Processamento.CodigoFonteDados), '/' ORDER BY CodigoFonteDados) AS Fonte, 
			(Processamento.dataProcessamento) AS DtAlteracao, 
			(Historico.IMEI) AS IMEI, 
			(Historico.IMSI) AS IMSI, 
			(SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Historico.StatusLinha) AS StatusLinha, 
			(Historico.ConsumoDados) AS ConsDados, 
			(Processamento.MatriculaCadastro) AS Matricula 
			FROM Historico, Processamento 
			WHERE Historico.CodigoProcessamento = Processamento.Codigo 
			AND Historico.NumeroSIMCard = 89550332280000892281
			GROUP BY SIMCard, Dispositivo, Linha, CodTecnologia, APNConfigurada, CodigoOperadora, CodigoAPNProvisionada, StatusSIMCard, DtAlteracao, IMEI, IMSI, StatusLinha, ConsDados, Matricula 

			Order by DtAlteracao desc

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
SELECT DISTINCT
      '1' seleco,
      (Dispositivo.Numero) AS Dispositivo,
            (SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Dispositivo.CodigoTecnologia) AS CodTecnologia,
            (SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Dispositivo.CodigoAPNConfigurada) AS APNConfigurada,
            (SIMCard.Numero) AS SIMCard,
            (Linha.Numero) AS Linha,
            (SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = SIMCard.CodigoOperadora) AS Operadora,
            (SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = SIMCard.CodigoAPNProvisionada) AS APNProvisionada,
            (SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = SIMCard.CodigoStatusSIMCard) AS StatusSIMCard,
            string_agg((SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Processamento.CodigoFonteDados), '/' ORDER BY CodigoFonteDados) AS Fonte,
            CASE WHEN SIMCard.dataAlteracao > Dispositivo.dataAlteracao OR Dispositivo.dataAlteracao IS NULL THEN SIMCard.dataAlteracao ELSE Dispositivo.dataAlteracao END AS DtAlteracao,
            (Dispositivo.IMEI) AS IMEI,
            (SIMCard.IMSI) AS IMSI,
            (SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Linha.CodigoStatusLinha) AS StatusLinha,
            (SIMCard.ConsumoDados) AS ConsDados,
            (Processamento.MatriculaCadastro) AS Matricula
            FROM SIMCard LEFT JOIN SIMCardDispositivo ON SIMCardDispositivo.SIMCard_Numero = SIMCard.Numero
            LEFT JOIN Dispositivo ON Dispositivo.Numero = SIMCardDispositivo.Dispositivo_Numero
            INNER JOIN Linha ON Linha.Numero = SIMCard.NumeroLinha
            LEFT JOIN Processamento ON (Processamento.Codigo = SIMCard.CodigoProcessamento OR Processamento.Codigo = Dispositivo.CodigoProcessamento)
            WHERE SIMCard.Numero = 89550332280000892281
            GROUP BY SIMCard, Dispositivo, Linha, CodTecnologia, APNConfigurada, CodigoOperadora, CodigoAPNProvisionada, StatusSIMCard, DtAlteracao, IMEI, IMSI, StatusLinha, ConsDados, Matricula
            
            UNION ALL

            SELECT DISTINCT
      '2' seleco,
      (Historico.NumeroDispositivo) AS Dispositivo,
            (SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Historico.CodigoTecnologia) AS CodTecnologia,
            (SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Historico.CodigoAPNConfigurada) AS APNConfigurada,
            (Historico.NumeroSIMCard) AS SIMCard,
            (Historico.NumeroLinha) AS Linha,
            (SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Historico.CodigoOperadora) AS Operadora,
            (SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Historico.CodigoAPNProvisionada) AS APNProvisionada,
            (SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Historico.StatusSIMCard) AS StatusSIMCard,
            string_agg((SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Processamento.CodigoFonteDados), '/' ORDER BY CodigoFonteDados) AS Fonte,
            (Processamento.dataProcessamento) AS DtAlteracao,
            (Historico.IMEI) AS IMEI,
            (Historico.IMSI) AS IMSI,
            (SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Historico.StatusLinha) AS StatusLinha,
            (Historico.ConsumoDados) AS ConsDados,
            (Processamento.MatriculaCadastro) AS Matricula
            FROM Historico, Processamento
            WHERE Historico.CodigoProcessamento = Processamento.Codigo
            AND Historico.NumeroSIMCard = 89550332280000892281
            GROUP BY SIMCard, Dispositivo, Linha, CodTecnologia, APNConfigurada, CodigoOperadora, CodigoAPNProvisionada, StatusSIMCard, DtAlteracao, IMEI, IMSI, StatusLinha, ConsDados, Matricula

            Order by seleco,DtAlteracao desc

Meio gambi ...

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.