Tenho três tabelas que tratam de livros: Authors
, Titles
de livros escritos e uma tabela de bridge TitleAuthor
, da qual estou tentando encontrar todos os livros ( Titles
) com mais de um autor . Estas são as tabelas:
Authors (Au_Id PK, Au_fname, Au_lname, ...)
Titles (Title_Id PK, Title, Title_type, ...)
TitleAuthor (Au_Id PK, Title_Id PK, Au_order, ...)
Em TitleAuthor
, não tenho certeza do que Au_order
significa, mas suspeito que seja a ordem em que o nome de um autor é citado em um livro com mais de um autor. Au_order
é um TinyInt
tipo de dados, btw. Essas consultas devem ser introdutórias, ou seja, sem junções ou subconsultas sofisticadas.
Isto é o que eu tentei:
1)
Select Au_Id from `TitleAuthor` where Count(Auth_id)>1;
Mas isso nos dá o nome do autor, não o nome do livro (lembre-se: consulta de introdução)
2) Descobrir quais livros/títulos são mencionados mais de uma vez em TitleAuthor
:
Select Title_id from Title-Author where Count(Title_Id)>1;
Isso não me dá resultados por algum motivo, embora também não haja mensagens de erro. Suspeito que precise agrupar e ter, mas isso também não está funcionando.
Alguma ideia?
Existem muitos caminhos. Provavelmente mais simples:
Você pode
JOIN
obterTitles
detalhes do livro.