我有桌子:
**RUBRIC:** `RubricID, RubricName`
**AUTOR:** `AutorID, FirstName, LastName`
**BOOK:** `BookID, BookName, book_photo`
**BOOKAUTOR:** `BookID, AutorID`
**BOOKRUBRIC:** `BookID, RubricID`
我想编写一个返回 BookName、FirstName、LastName、RubricName 的 SELECT 查询。
我有两个单独的查询,但我不知道如何在一个选择中编写它。
这就是我得到的:
SELECT book.BookName, autor.FirstName, autor.LastName FROM bookautor JOIN book ON book.BookID=bookautor.BookID JOIN autor on autor.AutorID=bookautor.AutorID;
SELECT rubric.RubricName FROM bookrubric JOIN rubric ON rubric.RubricID=bookrubric.RubricID;
效果很好,但是如何在一个选择中写入呢?
我尝试这样做,但它不起作用:
SELECT book.BookName, autor.FirstName, autor.LastName, rubric.RubricName FROM bookautor,bookrubric JOIN book ON book.BookID=bookautor.BookID JOIN autor on autor.AutorID=bookautor.AutorID LEFT JOIN rubric ON rubric.RubricID=bookrubric.RubricID;
它返回错误:
ERROR 1054 (42S22): Unknown column 'bookautor.BookID' in 'on clause'