Olá!
Tenho duas tabelas uma de Funcionáriose outra de Treinamento.
Minha chave primária na tabela Funcionários é o CPF e na tabela de Treinamento é o CPF e TIPO de treinamento.
Um Funcionário pode realizar vários tipos treinamento, mas não pode realizar o mesmo por isso criei uma chave extra na tabela Treinamento.
Estou tentando fazer uma consulta em que conste somente o registro com informações das duas tabelas, cujo a data de envio do TREINAMENTO seja a maior. Para tanto fiz o seguinte:
SELECT [Tb Funcionarios].[CPF], Max([Tb Treinamento].[Dt Envio]) AS [MaxDeDt Envio]
FROM [Tb Funcionarios] INNER JOIN [Tb Treinamento] ON [Tb Funcionarios].[CPF] = [Tb Treinamento].[CPF]
GROUP BY [Tb Funcionarios].[CPF];
Deste modo consegui visualizar o número total correto de Funcionários sem repetições de outros TIPOS de treinamento cuja a data é a maior.
Porém, a minha consulta necessita de outras informações e se tento adicionar por exemplo, Data de envio ou o TIPO da tabela TREINAMENTO ele não me mostra mais a maior data. Ele simplesmente me mostra todos os registros correspondentes com o relacionamento da chave primária de ambas as tabelas.
Segue abaixo como estou tentando:
SELECT [Tb Funcionarios].[CPF], Max([Tb Treinamento].[Dt Envio]) AS [MaxDeDt Envio], [Tb Treinamento].[Dt Conclusao], [Tb Treinamento].Tipo
FROM [Tb Funcionarios] INNER JOIN [Tb Treinamento] ON [Tb Funcionarios].[CPF] = [Tb Treinamento].[CPF]
GROUP BY [Tb Funcionarios].[CPF], [Tb Treinamento].[Dt Conclusao], [Tb Treinamento].Tipo;
Poderiam me ajudar? Não sei o que estou fazendo de errado.
Tenho duas tabelas uma de Funcionáriose outra de Treinamento.
Minha chave primária na tabela Funcionários é o CPF e na tabela de Treinamento é o CPF e TIPO de treinamento.
Um Funcionário pode realizar vários tipos treinamento, mas não pode realizar o mesmo por isso criei uma chave extra na tabela Treinamento.
Estou tentando fazer uma consulta em que conste somente o registro com informações das duas tabelas, cujo a data de envio do TREINAMENTO seja a maior. Para tanto fiz o seguinte:
SELECT [Tb Funcionarios].[CPF], Max([Tb Treinamento].[Dt Envio]) AS [MaxDeDt Envio]
FROM [Tb Funcionarios] INNER JOIN [Tb Treinamento] ON [Tb Funcionarios].[CPF] = [Tb Treinamento].[CPF]
GROUP BY [Tb Funcionarios].[CPF];
Deste modo consegui visualizar o número total correto de Funcionários sem repetições de outros TIPOS de treinamento cuja a data é a maior.
Porém, a minha consulta necessita de outras informações e se tento adicionar por exemplo, Data de envio ou o TIPO da tabela TREINAMENTO ele não me mostra mais a maior data. Ele simplesmente me mostra todos os registros correspondentes com o relacionamento da chave primária de ambas as tabelas.
Segue abaixo como estou tentando:
SELECT [Tb Funcionarios].[CPF], Max([Tb Treinamento].[Dt Envio]) AS [MaxDeDt Envio], [Tb Treinamento].[Dt Conclusao], [Tb Treinamento].Tipo
FROM [Tb Funcionarios] INNER JOIN [Tb Treinamento] ON [Tb Funcionarios].[CPF] = [Tb Treinamento].[CPF]
GROUP BY [Tb Funcionarios].[CPF], [Tb Treinamento].[Dt Conclusao], [Tb Treinamento].Tipo;
Poderiam me ajudar? Não sei o que estou fazendo de errado.