27,579
社区成员
发帖
与我相关
我的任务
分享
select id,cid,iif(id is null,'无',worker)worker from table2 t2 left join table1 t1 on t1.ID =t2.CID
USE tempdb
GO
IF OBJECT_ID('Table1') IS NOT NULL DROP TABLE Table1
IF OBJECT_ID('Table2') IS NOT NULL DROP TABLE Table2
CREATE TABLE Table1 (ID INT PRIMARY KEY,[Name] NVARCHAR(20))
CREATE TABLE Table2 (CID INT,[worker] NVARCHAR(20))
INSERT INTO Table1(ID,Name) VALUES(1,'T1')
INSERT INTO Table1(ID,Name) VALUES(2,'T2')
INSERT INTO Table1(ID,Name) VALUES(3,'T3')
INSERT INTO Table2(CID,worker) VALUES(1,'张三')
INSERT INTO Table2(CID,worker) VALUES(3,'张四')
INSERT INTO Table2(CID,worker) VALUES(2,'张五')
INSERT INTO Table2(CID,worker) VALUES(0,'无名')
INSERT INTO Table2(CID,worker) VALUES(1,'张三')
SELECT
ID
,b.CID
,CASE WHEN a.ID IS NULL THEN '无' else b.worker END as worker
FROM Table1 AS a RIGHT JOIN Table2 AS b ON a.ID=b.CID
/*
ID CID worker
----------- ----------- --------------------
1 1 张三
3 3 张四
2 2 张五
NULL 0 无
1 1 张三
*/