相关疑难解决方法(0)

条件JOIN不同的表

我想知道用户是否在2个相关表中的任何一个中都有一个条目.

USER (user_id)
EMPLOYEE (id, user_id)
STUDENT (id, user_id)
Run Code Online (Sandbox Code Playgroud)

用户可以拥有员工和/或学生条目.如何在一个查询中获取该信息?我试过了:

select * from [user] u
inner join employee e 
    on e.user_id = case when e.user_id is not NULL 
                        then u.user_id 
                        else null 
                   end
inner join student s 
    on s.user_id = case when s.user_id is not NULL 
                        then u.user_id 
                        else null 
                   end
Run Code Online (Sandbox Code Playgroud)

但它只会返回两个表中都有条目的用户.

SQL小提琴示例

sql conditional join sql-server-2008

20
推荐指数
4
解决办法
6万
查看次数

标签 统计

conditional ×1

join ×1

sql ×1

sql-server-2008 ×1