如何进行左连接并为 matched/unmatched 条记录创建指标?

How to do left join and create an indicator for matched/unmatched records?

我想创建一个带有指示符的左连接,以便在选择数据时,对于匹配的记录,我可以放置一个指示符 1,对于不匹配的记录,我可以放置一个指示符 0?

这是在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 

SELECT 中使用 CASE 语句来检查您加入的列是否在右侧列 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;