我有 3 个 mySQL InnoDB 表:
Books
A_ID smallint(5) 无符号自动递增 Primary Key
Title varchar(60)
作者
B_ID smallint(5) 无符号自动递增主键
名称 varchar(30)
Author_Book 多对多表
A_ID smallint(5) unsigned
B_ID smallint(5) unsigned
PRIMARY KEY (A_ID,B_ID)
FOREIGN KEY(A_ID) REFERENCES Authors(A_ID)
FOREIGN KEY(B_ID) REFERENCES Books(B_ID)
我不明白如何在多对多表中使用 LEFT JOIN:比如说,显示每本书的作者。我尝试了这个似乎合乎逻辑但没有运气的查询:
SELECT Books.Title, Authors.Name
FROM Books LEFT JOIN ON Books.B_ID = Author_Book.B_ID
LEFT JOIN ON AuthorBook.A_ID = Authors.A_ID;
我的查询是否存在标点符号/语法错误?
任何帮助将非常感激。