我想创建一个带指示符的左连接,这样对于匹配的记录,我可以放置一个指示符1,对于不匹配的记录,我可以将指标设为0,同时选择数据?
答案 0 :(得分:2)
这是在T-SQL
中SELECT *, CASE WHEN Table2.Id IS NULL THEN 0 ELSE 1 END as Match
FROM Table1 LEFT OUTER JOIN Table2
ON Table1.Id = Table2.Table1Id
答案 1 :(得分:0)
在CASE
中使用SELECT
语句,以检查您在右侧列IS NULL
中加入的列。
例如,要列出所有员工及其经理以及表明他们是否有经理的布尔标志,请使用:
select
e.first_name,
e.last_name,
case
when m.employee_id is not null then 1
else 0
end as has_manager
m.first_name as manager_first_name,
m.last_name as manager_last_name
from employee e
left outer join manager m on m.employee_id = e.manager_id;