0
我相信我在這裏缺少正確的術語,但在這個例子中許多一對多的關係:在一個多對多的關係,怎麼能集體所有的記錄中選擇
用戶具有很多書。一本書由許多用戶擁有。
查看兩個用戶擁有的所有圖書的最佳方式是什麼?
現在我只是用這樣的:
SELECT * FROM books
WHERE book_id IN
(SELECT book_id FROM user_has_book WHERE user_id = 'joe' AND book_id IN
(SELECT book_id FROM user_has_book WHERE user_id = 'frank'))
我知道不能做到這一點的最好辦法 - 對不對?我正在使用MySQL
無論採用哪種方式,請確保在系統上進行基準測試,並在可能的情況下檢查執行計劃。 – Dlongnecker 2010-10-15 22:05:06