【发布时间】:2013-11-05 08:07:23
【问题描述】:
我有 3 个 mySQL InnoDB 表:
书籍
A_ID smallint(5) 无符号自增主键
标题 varchar(60)
作者
B_ID smallint(5) 无符号自增主键
名称 varchar(30)
Author_Book 多对多表
A_ID smallint(5) 无符号
B_ID smallint(5) 无符号
主键 (A_ID,B_ID)
FOREIGN KEY(A_ID) REFERENCES 作者(A_ID)
FOREIGN KEY(B_ID) 参考书籍(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;
我的查询是否存在标点符号/语法错误?
任何帮助将不胜感激。
【问题讨论】:
-
没有。请参阅 LEFT JOIN 语法。