Pegar resultado de subselect para usar em outro

07/05/2019

12

Bom dia!

Estou com uma duvida como armazenar o resultado de um subselect para usar em outro subselect.


select *
  from tabela1 a
 where campo1 in (select max(data)
                                   from tabela2 b
                                where a.campo = b.campo
                                    and seqmov in (select max(seqmov)
                                                                  from tabela3 c
                                                               where b.campo = c.campo
                                                                   and data = ?))




Precisco utilizar o resultado no max(data) no ultimo select no lugar do ? Resumindo preciso pegar a ultima sequencia da maior data. Agradeço desde ja!
Responder

Post mais votado

07/05/2019

deve ser algo assim:
select
	a.*,
	b.dtb, b.seqb
from
	tabela1 a
inner join
	(select campo, seqmov seqb, max(data) dtb
    from tabela2
    group by campo, seqmov) b on b.campo = a.campo
inner join
	(select campo, data dtc, max(seqmov) seqc
    from tabela3
    group by campo, data) c on c.campo = b.campo and c.dtc = b.dtb and c.seqc = b.seqb

Responder

Mais Posts

08/05/2019

Kaio

Obrigado Emerson! Me ajudou muito!
Responder
×
+1 DevUP
Acesso diário, +1 DevUP
Parabéns, você está investindo na sua carreira