Consulta em SQL que exclui valores com correspondência

19/08/2019

0

Considere uma tabela com os seguintes valores:

id, estagio, data,
1, a, 5/1/2019
1, b, 4/1/2019
2, a, 4/1/2019
3, b, 2/1/2019
4, b, 2/1/2019
4, b, 5/1/2019


Gostaria de criar uma consulta que traga a linha com a data mais nova para cada um dos IDs desconsiderando todos os IDs que possuam um estágio = 'a'. O resultado esperado é:

id, estagio, data,
3, b, 2/1/2019
4, b, 5/1/2019

Alguém pode me ajudar, por favor?
André Carreiro

André Carreiro

Responder

Post mais votado

20/08/2019

tente assim:
select
	id, estagio, max(data) maiordata
from
	tabela
where
	not id in (select id from tabela where estagio = 'a')
group by
	id, estagio

Emerson Nascimento

Emerson Nascimento
Responder

Mais Posts

20/08/2019

André Carreiro

tente assim:
select
	id, estagio, max(data) maiordata
from
	tabela
where
	not id in (select id from tabela where estagio = ''a'')
group by
	id, estagio


Obrigado. Funcionou.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar