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

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

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

Aceitar