Viv*_*ang -1 sql sql-server join left-join
我有表A:
id
1
2
3
4
5
Run Code Online (Sandbox Code Playgroud)
和表B:
id
2
3
4
Run Code Online (Sandbox Code Playgroud)
我离开了加入 A 和 B:
id id
1 NULL
2 2
3 3
4 4
5 NULL
Run Code Online (Sandbox Code Playgroud)
我怎样才能获得这样的新专栏:
id id flag
1 NULL 0
2 2 1
3 3 1
4 4 1
5 NULL 0
Run Code Online (Sandbox Code Playgroud)
Generally speaking, I want all rows in A but not in B to be flaged as 0 and want all rows in both tables to be flaged as 1. How can I achieve that? Better not use CTE.
This is just a CASE expression:
CASE WHEN B.id IS NULL THEN 0 ELSE 1 END AS flag
Run Code Online (Sandbox Code Playgroud)
Alternatively, you could use an IIF (which is shorthand CASE expression):
IIF(b.id IS NULL, 0,1)
Run Code Online (Sandbox Code Playgroud)