Bom dia Senhores,
Estou com um dificuldade, onde precisava que minha consulta trouxesse apenas a menor data para cada produto.
Faço o cruzamento entre 3 tabelas. Segue 2 Selects que tentei, porém está trazendo todas as datas (termino_digitacao) de cada item.
Tentativa 1:
select
concat(prd.cod_produto, prd.digito) as Cod_Delage, prd.descricao as Descricao, p.termino_digitacao as Entrada, p.cod_pedido as Pedido
from pedido p (NOLOCK) inner join pedido_item pedi (NOLOCK) on p.cod_pedido= pedi.cod_pedido inner join
produto prd (NOLOCK) on pedi.cod_produto= prd.cod_produto
where p.operacao=2 and p.termino_digitacao=(select Min(pe.termino_digitacao)
FROM pedido pe
WHERE pe.cod_pedido=p.cod_pedido
GROUP BY cod_pedido)
GROUP by prd.cod_produto,prd.digito, prd.descricao, p.termino_digitacao, p.cod_pedido
ORDER BY Cod_Delage
Tentativa 2:
select
concat(prd.cod_produto, prd.digito) as Cod_Delage, prd.descricao as Descricao, p.termino_digitacao as Entrada, p.cod_pedido as Pedido
from (select cod_pedido, MIN(termino_digitacao) as entrada
from pedido (NOLOCK) group by cod_pedido) pe inner join
pedido p (NOLOCK) on pe.cod_pedido= p.cod_pedido and pe.cod_pedido=p.cod_pedido and pe.entrada= p.termino_digitacao inner join
pedido_item pedi (NOLOCK) on p.cod_pedido= pedi.cod_pedido inner join
produto prd (NOLOCK) on pedi.cod_produto= prd.cod_produto
where p.operacao=2
GROUP by prd.cod_produto,prd.digito, prd.descricao, p.termino_digitacao, p.cod_pedido
ORDER BY p.termino_digitacao asc
OBS: Ambas estão trazendo as mesmas informações kkk.