Filtrar um registro de cada produto

10/12/2015

Bom dia
estou com uma dúvida:
Como mostrar um registro de cada produto
fiz algumas tentativas mas não tive sucesso

[img:descricao=exemplo]http://arquivo.devmedia.com.br/forum/imagem/436075-20151210-113341.jpg[/img]

Gostaria que mostrasse somente os registros marcados em verde

desde já agradeço a ajuda

Vicente Silva

Melhor resposta

11/12/2015

Vicente,

Esqueça tudo que coloquei até aqui, pois fui negligente na leitura de seu post original !

O quê você precisa fazer é :

SELECT DISTINCT Codigo, Data_Bai, Status
FROM Tabela Tab
WHERE Data_Bai = (SELECT MAX(Data_Bai) FROM Tabela WHERE Codigo = Tab.Codigo))

Se precisar Códigos específicos, insira-os na condição do WHERE.

Perdoe a confusão !

Marcos P

Responder Citar

Outras Respostas

10/12/2015

Marcos P

Vicente,

Se a ideia é filtrar apenas os códigos de produto, você pode fazer :

select codigo
from tabela
group by codigo


Se sua necessidade não for essa, volte aqui e explique melhor o que você precisa.
Responder Citar

10/12/2015

Vicente Silva

Boa tarde Marcos,

é que eu preciso que retorne também os campos data_bai e status

ficaria desta forma:

codigo data-bai status
01 2014-09-17 N
02 2014-09-17 N
04 2014-03-04 F
22 2014-09-19 N
23 2014-09-19 N
235 2014-09-19 N
Responder Citar

10/12/2015

Marcos P

SELECT DISTINCT Codigo, Data_Bai, Status
FROM Tabela
Responder Citar

10/12/2015

Vicente Silva

testei, mas sai todos os registros pois o campo data_bai e o status tornam os registros diferentes
Responder Citar

10/12/2015

Marcos P

Então... se você revisar o exemplo que passou, vai perceber que seus registros já são únicos, pois as três colunas apresentam valores distintos !
Responder Citar

11/12/2015

Vicente Silva

entendi Marcos,

se eu coloco:

select distinct a.codigo, max(a.data_bai)
from servicos a
group by a.codigo
order by a.codigo


traz certo, mas eu preciso da coluna status também,
aí coloco e sai vários.

será que teria outra forma de trazer somente os registros com as três colunas e somente um registro de cada produto?
Responder Citar

11/12/2015

Marcos P

Não entendi sua necessidade !

No registros que você colocou como exemplo, TODAS as linhas são diferentes entre si. Justamente por isso, o DISTINCT recupera todas elas !

Baseada nos dados que você colocou no post original, coloque aqui o resultado que você precisa, para que eu tente entender como posso te ajudar.
Responder Citar

11/12/2015

Vicente Silva

não esquenta! tranquilo!!!


Perfeito Marcos!!!

era o que eu precisava

você é o cara!!!

funcionou !!!

Muito obrigado!!!
Responder Citar

11/12/2015

Vicente Silva

RESOLVIDO
Responder Citar