[firebase-br] Duvida em SQL

farlen geraldo farlen.geraldo em gmail.com
Qua Set 30 14:51:33 -03 2009


Boa tarde a todos, peço ajuda para resolver uma consulta em meu banco,
firebird 2.0

Tenho as seguinte tabelas

Acervo ( codigo,n_registro,titulo,assunto)
Autor ( codigo,nome,sobrenome,nomecompleto)
Autoria(codigo,codlivro,codautor)

Quando faço a pesquisa por exemplo para saber quais livros eu possui por
assunto
faço o seguinte:

select ac.NUM_CONTROLE,ac.titulo, ac.assunto, au.nomecompleto  from acervo
ac, autor au, autoria aut
where ac.codigo = aut.livro and
      au.codigo = aut.autor and
      upper (ac.assunto) like :assunto
order by ac.titulo

Obtenho so seguintes resultados

N_livro  Titulo               Assunto         Autor
2   Ciencia Moderna      Biologia         G.Lourdes
2   Ciencia Moderna      Biologia         A. Silva
4   Matematica             Matematica    C. Machado
5   Fisica Aplicada        Fisica            A. Santos
5   Fisica Aplicada        Fisica            C. Machado

Observando o meu problema e o seguinte como um livro pode ter mais de um
autor, sendo assim o registro esta se repetindo e na contagem de livros fica
como se houvessem dois livros quando na verdade é apenas um livro.
Gostaria da ajuda para que minha SQL retornasse somente um exemplar de cada
livro e não como está.



-- 
Farlen Geraldo Araujo
Analista de Sistemas
Tel: (37)3353 - 2222 / 9191 - 0475



Mais detalhes sobre a lista de discussão lista