Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Tenho 2 tabelas (exemplo)
tblDocumentos
docsID - Documento
1 - Documento tal a
2 - Documento tal b
3 - Documento tal c
...
tblTramitação
tramID - docsID - Destino - Data
1 - 1 - Seção a - 17/12/2008
2 - 2 - Seção b - 16/12/2008
3 - 3 - Seção b - 14/12/2008
4 - 2 - Seção b - 15/12/2008
5 - 3 - Seção a - 16/12/2008
Preciso que: ao pesquisar "destino" como "Seção b", me retornasse todos os documentos em que a última data da tramimitação contivesse "Seção b".
2 - 2 - Seção b - 16/12/2008
3 - 3 - Seção b - 14/12/2008
Sei que terei que usar uma subconsulta.
Seria: listar todos os documentos em tramitação agrupando pela última data e então selecionar somente os que contivessem a seção pesquisada.
Acho que o caminho é mais ou menos este:
SELECT tblDocumentos.ID, tblDocumentos.Documento, tblTramitação.tramID, tblTramitação.docsID, tblTramitação.Destino, tblTramitação.Data
FROM tblDocumentos LEFT JOIN tblTramitação ON tblDocumentos.ID = tblTramitação.ID
WHERE (((tblTramitação.tramID) In (SELECT tramID, MAX(Data) FROM tblTramitação WHERE ([tblTramitação].[Destino]=[Formulários]![frmPesquisa]![Combinação38]))))
Mas não está funcionando. O Access dá a seguinte mensagem:
"Você gravou uma subconsulta que pode retornar mais de um campo sem usar a palavra EXISTS na cláusula FROM da consulta principal..."
Já tentei também de várias outras formas, mas não consegui.
Talvez nem seja assim, então se alguém puder me ajudar, agradeço.
Alex
Carregando comentários...