我需要3个与同一事物相关的表。
例如,1有用户信息,1有该用户的页面信息,另一个有该用户的页面选项。
全部通过user_id连接
可以这样做。
SELECT *
FROM users
LEFT JOIN page_info ON users.id=page_info.user_id
RIGHT JOIN page_settings ON user.id=page_settings.user_id
WHERE users.id=$id
或者我将被击败使用2个查询
由于
答案 0 :(得分:3)
我认为您误解了LEFT
和RIGHT
外部联接的作用:阅读A Visual Explanation of SQL Joins。
在你的情况下,首先users
表(即所有其他表的“左”),我怀疑你想要两个连接都是LEFT
外连接?那就是:
SELECT *
FROM users
LEFT JOIN page_info ON users.id = page_info.user_id
LEFT JOIN page_settings ON users.id = page_settings.user_id
WHERE users.id = $id
答案 1 :(得分:1)