簡體   English   中英

如何使用我的聯接表MySQL?

[英]How do I use my join tables MySQL?

我在MySQL數據庫中有3個表,

作者

Author_has_Book。

作者有兩欄
idauthor
名稱

書中也有兩欄
身份證
名稱

Author_has_Book也有兩列
作者和書的外鍵book_idbook
author_id作者。

我已經在兩個表中成功插入了作者和書,並且已經在連接表中輸入了他們的密鑰。

現在如何使用該聯接表獲取某個作者或某本書的所有作者的所有書籍? 這是通過聯接完成的嗎?

編輯:建議的重復是不一樣的問題。

它將獲得所有記錄

SELECT Author.*
FROM Author Author 
INNER JOIN Author_has_Book AuthorHasBook
    ON Author.idauthor = AuthorHasBook.author_idauthor
INNER JOIN Book Book
    ON AuthorHasBook.book_idbook = Book.idbook

如果您希望選擇任何特定的作者,則只需在where子句中提及它,請參見以下示例:

SELECT Author.*
FROM Author Author 
INNER JOIN Author_has_Book AuthorHasBook
    ON Author.idauthor = AuthorHasBook.author_idauthor
INNER JOIN Book Book
    ON AuthorHasBook.book_idbook = Book.idbook
WHERE Author.idauthor = 'your author id'

試試這個查詢

select a.name,c.name from book a
join Author_has_Book b on a.idbook=b.idbook
join author c on b.idauthor=c.idauthor

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM