Dúvidas com SQL - Select em duas tabelas...
Tenho duas tabelas: LIVROS e ALUGUEL
Livros:
-------
LIVID(código do livro)
LIVTITULO(título)
LIVQUANTIDADE(qtde total)
AUTID(código do autor)
Aluguel:
---------
ALUID (código da operação-> auto-incremento)
ALUDATADEVOLUCAO (data de devolução)
ALUDATAEMPRESTIMO (data do empréstimo)
LIVID (código do livro -> ligada à tabela LIVROS)
CLIID (código do cliente)
Tenho que criar uma tela de consulta de livros que trará os campos:
Código, Título, Nome do autor, quantidade e quantidade disponível
para trazer a quantidade disponível, para cada livro tenho que ir na tabela de aluguel e ver quantos estão alugados, isto é, a DATADEVOLUCAO é nula. Há como fazer com apenas uma instrução SQL?? Trazer todos os livros e para cada um trazer da tabela ALUGUEL quantos estão alugados(ai o resto seria criar um campo calculado e fazer as contas TOTAL-ALUGADO).
Quem puder dar uma mão eu agradeço.
Delphi2003.
Livros:
-------
LIVID(código do livro)
LIVTITULO(título)
LIVQUANTIDADE(qtde total)
AUTID(código do autor)
Aluguel:
---------
ALUID (código da operação-> auto-incremento)
ALUDATADEVOLUCAO (data de devolução)
ALUDATAEMPRESTIMO (data do empréstimo)
LIVID (código do livro -> ligada à tabela LIVROS)
CLIID (código do cliente)
Tenho que criar uma tela de consulta de livros que trará os campos:
Código, Título, Nome do autor, quantidade e quantidade disponível
para trazer a quantidade disponível, para cada livro tenho que ir na tabela de aluguel e ver quantos estão alugados, isto é, a DATADEVOLUCAO é nula. Há como fazer com apenas uma instrução SQL?? Trazer todos os livros e para cada um trazer da tabela ALUGUEL quantos estão alugados(ai o resto seria criar um campo calculado e fazer as contas TOTAL-ALUGADO).
Quem puder dar uma mão eu agradeço.
Delphi2003.
Delphi2003
Curtidas 0
Respostas
Marcio.theis
16/02/2005
Fiz um SQL aqui, agora, não sei se vai funcionar muito certo:
no caso eu coloquei como sendo o Autor uma tabela que eu imaginei com os campos, acredito que não seja o mesmo que o seu.
select livros.livid, livros.livtitulo, autor.nmautor, livros.livquantidade, (livros.livquantidade - count(*)) Disponivel from aluguel, livros, autor where aluguel.livid = livros.livid and autor.nuautor = livros.autid and aluguel.aludatadevolucao is null group by livros.livid, livros.livtitulo, autor.nmautor, livros.livquantidade order by livros.livtitulo
no caso eu coloquei como sendo o Autor uma tabela que eu imaginei com os campos, acredito que não seja o mesmo que o seu.
GOSTEI 0