除了某些列之外,如何进行 LEFT OUTER JOIN?

How to make LEFT OUTER JOIN except some colums?

我有 3 个表:

首先"placement"

第二个"user_info"

第三个"user_placements"

我想获取所有展示位置数据和用户信息,

怎么做?

我试过了,但结果不是我预期的那样:

SELECT *, user_placements.id AS user_placements_id, placement.id AS placement_id
FROM placement
LEFT OUTER JOIN user_placements ON placement.id = user_placements.id_placement

您需要再加入一次用户信息

SELECT placement.*,user_info.id as user_info_id,user_info.name as user_name,user_info.mobile as user_mobile
 FROM placement LEFT OUTER JOIN user_placements ON placement.id = user_placements.id_placement
    LEFT OUTER JOIN user_info ON user_info.id = user_placements.id_user

您缺少第二个连接:

SELECT *
FROM placement AS p
JOIN user_placements AS up ON p.id = up.id_placement
JOIN user_info AS u ON up.id_user = u.id

用你想要的数据替换通配符。 您当然会通过此查询获得重复数据。