-1
我想從三張表tbl_books
,tbl_books_author
和tbl_books_subject
中搜索「law」。我正在運行以下查詢。使用我的查詢從多個表中搜索關鍵字,
SELECT *
FROM tbl_books p, tbl_books_author d, tbl_books_subject m
WHERE p.title = 'law'
OR d.author = 'law'
OR m.subject = 'law'
LIMIT 0,30;
當運行此查詢它顯示在最前面 「顯示行0 - 29(1759260總計,查詢花費5.1206秒)」。你能解釋一下爲什麼它會顯示這個。
這是什麼原因?
你基本上建立一個[笛卡爾乘積(HTTP: //en.wikipedia.org/wiki/Cartesian_product)涉及3個表格。您希望它返回什麼?這3張桌子是不是應該用外鍵連接?你真的有一個叫「法律」的作者嗎? – Marian
如果我使用INNER JOIN連接所有表,然後運行查詢。所有的表都有id作爲主鍵。 –
聽起來像一個計劃! –