Ir para conteúdo

Arquivado

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

rdpacato

Soma de quantidade

Recommended Posts

Pessoal beleza?


Tenho uma consulta no BD, onde tenho que pegar quantos registros retornam no select... só que utilizo o STRINGAGG, para juntar dois resultados, e por causa disso, está pegando a quantidade de todos os registros e não está contando as duas linhas como uma... e sim as duas..

Exemplo, tenho 3 linhas resultado... e 2 deles são de fonte diferente... meu select junta esses dois resultados... só que a Quantidade deveria ser por 2.... mas retorna 3...

Minha Consulta:

 

SELECT (SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Dispositivo.CodigoTecnologia) AS CodTecnologia, 
			(SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = SIMCard.CodigoOperadora) AS Operadora, 
			(SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Linha.CodigoStatusLinha) AS StatusLinha,
			string_agg((SELECT Dominio.Nome FROM Dominio WHERE Dominio.Codigo = Processamento.CodigoFonteDados), '/' ORDER BY CodigoFonteDados) AS Fonte, 
			COUNT(*) as Quantidade 
			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 (
			
			Dispositivo.CodigoTecnologia IN (90,91,92,93,94,95,96)
			
			AND SIMCard.CodigoOperadora IN (30,31,32,33)
			
			AND Linha.CodigoStatusLinha IN (50,51,52)
			
			)
			
			GROUP BY CodTecnologia, Operadora, StatusLinha 
			ORDER BY CodTecnologia, Operadora, StatusLinha

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Consegui fazendo com a tabela virtual como vc me ensinou outra hora, rsrs....

 

 

SELECT CodTecnologia, Operadora, StatusSIMCard , COUNT(*) as Quantidade FROM (

 

(AQUI O SELECT POSTADO ANTERIORMENTE)

 

)Tabela_Virtual

GROUP BY CodTecnologia, Operadora, StatusSIMCard

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok rdpacato, mas confesso que tenho medo de seus sql com estes selects como coluna.

 

Sei que tem hora que não tem outro jeito...

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.