我有5臺是那些:選擇要求選擇5桌
my_books
表:
- id_book
- 標題
- 價格
- 描述
genre
表:
- id_genre
- 類型(在此列類型描述)
genre_ind
表:
- id_book
- id_genre(表結合體裁和書籍表)
authors
表:
- id_author
- 作者(在本專欄作者姓名)
author_ind
表:
- id_book
- id_author
我需要連接表來按流派ID選擇所有圖書信息。由於存儲在其他表上的作者信息需要根據書籍ID添加作者信息。
嘗試這樣做,在一個單一的查詢,到目前爲止,我有以下查詢:
SELECT my_books.id_book,
my_books.title,
my_books.price,
my_books.descrip,
a.genre,
s.authors
FROM my_books
LEFT JOIN genre_ind
ON my_books.id_book = genre_ind.id_book
LEFT JOIN genre a
ON genre_ind.id_genre = a.id_genre
LEFT JOIN author_ind
ON books.id_book=author_ind.id_book
LEFT JOIN authors s
ON author_ind.id_author=s.id_author
WHERE author_ind.id_book=my_books.id_book
AND genre_ind.id_genre=%d
我擁有實用的查詢,如果我需要根據類型ID從my_books信息選擇信息,但後來我嘗試擴展它來選擇作者信息,它不起作用!
更新:
現在代碼一刀看起來是這樣的:
SELECT my_books.id_book,
my_books.title,
my_books.price,
my_books.descrip,
a.genre,
s.authors
FROM my_books
LEFT JOIN genre_ind
ON my_books.id_book = genre_ind.id_book
LEFT JOIN genre a
ON genre_ind.id_genre = a.id_genre
LEFT JOIN author_ind
ON my_books.id_book = author_ind.id_book
LEFT JOIN authors s
ON author_ind.id_author = s.id_author
WHERE genre_ind.id_genre=%d
,我得到的錯誤是:MySQL的:#1054 - 在 '字段列表'
未知列 's.authors'謝謝你的幫助,真的很感謝
好了,問題解決了。非常感謝你的時間和幫助!
正確一刀:
SELECT my_books.id_book,
my_books.title,
my_books.price,
my_books.descrip,
a.genre,
s.author
FROM my_books
LEFT JOIN genre_ind
ON my_books.id_book = genre_ind.id_book
LEFT JOIN genre a
ON genre_ind.id_genre = a.id_genre
LEFT JOIN author_ind
ON my_books.id_book = author_ind.id_book
LEFT JOIN authors s
ON author_ind.id_author = s.id_author
WHERE genre_ind.id_genre=%d
怎麼不工作?你能否提供關於錯誤的更多細節? –
警告:mysql_num_rows():提供的參數不是有效的MySQL結果資源 –
你能嘗試刪除where子句並檢查它的工作嗎? – DevelopmentIsMyPassion