Somar valores de duas tabelas e depois mostrar o maior

17/04/2020

4

Boa noite, estou estagnado aqui numa questão do trabalho onde ele quer que eu mostre o nome do estado com a maior população, eu já consegui mostrar a população de todos os estados mas na hora de exibir somente o maior eu não consegui fazer, vou botar aqui abaixo o que eu consegui mas não esta certo.

SELECT e.nome, SUM(m.populacao) pop
	FROM municipio m
	INNER JOIN estado e
	ON e.codestado = m.codestado
	GROUP BY e.nome
	HAVING SUM(m.populacao) > 30000000


Imagino que seja nesse caminho, mas não sei como exibir o resultado sem usar esse having, assim esta errado pois eu sei que o estado que tem mais população é são paulo então botei maior que 30.000.000.
Responder

Post mais votado

17/04/2020

Kauano, boa noite!

Segue a solução que acredito que possa te ajudar:

SELECT e.nome,
SUM(m.populacao) pop
FROM municipio m
INNER JOIN estado e
ON ( e.codestado = m.codestado )
GROUP BY e.nome
ORDER BY pop DESC
LIMIT 1

O que foi feito:

- Removi o HAVING
- Adicionei o ORDER BY pop DESC (Irá ordenar de acordo com o maior volume de população)
- Adicionei o LIMIT 1 que irá trazer somente a primeira linha e como utilizamos o ORDER BY pop DESC será a maior população

Responder

Mais Posts

17/04/2020

Erik Moreira

Boa noite, estou estagnado aqui numa questão do trabalho onde ele quer que eu mostre o nome do estado com a maior população, eu já consegui mostrar a população de todos os estados mas na hora de exibir somente o maior eu não consegui fazer, vou botar aqui abaixo o que eu consegui mas não esta certo.

SELECT e.nome, SUM(m.populacao) pop
	FROM municipio m
	INNER JOIN estado e
	ON e.codestado = m.codestado
	GROUP BY e.nome
	HAVING SUM(m.populacao) > 30000000


Imagino que seja nesse caminho, mas não sei como exibir o resultado sem usar esse having, assim esta errado pois eu sei que o estado que tem mais população é são paulo então botei maior que 30.000.000.
Responder

17/04/2020

Kauano

Funcionou, obrigado. Não tinha conhecimento dos comandos DESC e LIMIT.
Responder

17/04/2020

Erik Moreira

Então agora é só dar uma estudada neles que é bem simples.

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários. Para saber mais sobre o uso de cookies,
consulte nossa política de privacidade. Ao continuar navegando em nosso site, você concorda com a nossa política.

Aceitar