Pesquisando valores em tabelas diferentes

3 respostas
dev-ailson

Olá pessoal.

Preciso fazer uma consulta em tabelas diferentes.

Ex.: (Folha de Pagamento) Existe uma tabela com matrículas e outra com movimentos. Selecionar uma matrícula e consultar em movimentos.
Com o resultado obtido realizar as operações.

Alguém já fez alguma coisa desse tipo antes?

Grato pela atenção de todos.

3 Respostas

rockstorm

Vou ver se entendi…
Voce quer consultar uma matricula dentro da tabela de movimentos…

select * from MATRICULA t1, MOVIMENTO t2 where t1.id = t2.id and t1.matricula = ‘1234’

Isso quer dizer que…as duas tabelas tem que estar lincadas (chave) e essas chaves que fazem a consistencia nas tabelas…“id”

Tente especificar melhor os campos…

Igor_Novaes

Cara!

Pelo que eu entendi vc tem que consultar os movimentos das respectivas matriculas. Correto?

Se sim entao eh o seguinte: Um exemplo pratico de SQL, pra vc adaptar ao seu sistema.
Supondo os campos:

Tabela Matricula: Id_Mat, Nome
Tabela Movimento: Id_Mov, DataMov,ValorMov,Mat

Vamos listar os campos:
Id_Mat, Id_Mov, DataMov, ValorMov

Codigo SQL (Exemplo do Join):
select Mat.Id_Mat, Mov.Id_Mov, Mov.DataMov,Mov.ValorMov
from Matricula Mat, Movimento Mov
where Mat.Id_Mat = Mov.Mat

As tabelas estando ou nao relacionadas este codigo funciona. Ok? Claro que, como o dev-ailson disse deve haver a coerencia de alimentacao dos dados entre os campos Mat.Id_Mat e Mov.Mat (por exemplo).

Espero ter ajudado.
Caso tenha dificuldades, posta de novo.
Abraco.

dev-ailson

rockstorm e Igor Novaes.

Valeu é isso mesmo.

Na tabela Matrícula existe, por exemplo, as matrículas 1001, 1002, 1003… e na tabela Movimentos existe registro informado diáriamente para essas matrículas. Até aí tudo bem! Já consigo selecionar os valores nas tabelas.

Como faço para inserir algum registro na tabela após valores obtidos no select?
Ex: Matrícula Movimentos
1001 1001
1002 null
1003 1003

Se a matrícula existir em movimentos, inserir algum registro em movimento. “Ok”

Se não existir, passar para a próxima matrícula na tabela Matrícula e percorrer o restante da tabela.

Grato pela atenção.

Criado 24 de agosto de 2007
Ultima resposta 24 de ago. de 2007
Respostas 3
Participantes 3