我有一个选择,我想通过左连接搜索一个表的列只有当用户启用essar搜索的前置条件作为添加表的条件我有点困惑,我不知道是否我分开搜索或者我一次做所有事情.... 他说让我看看mysql系统,但是我看到了
if .condition... then ... end if;
我的代码
select user. * from
u user
if (u.visible == 1,
left join houseUser hu on u.id = h.id_user
left join h house on hu.id_house = h.id_house
)
where
u.age> 30
如果可见,添加该代码可以看到用户所在的房屋。
答案 0 :(得分:0)
您可以将条件合并到on
子句中:
select u.*, hu.*, h.*
from user u left join
houseUser hu
on u.id = h.id_user and u.visible = 1 left join
h house
on hu.id_house = h.id_house and u.visible = 1
where u.age > 30;
列会返回,但NULL
不是visible
时,它们会1
。