34,837
社区成员




SELECT A.* ,
CASE WHEN B.ID IS NOT NULL THEN '是'
ELSE '否'
END AS 求是否出现
FROM A
LEFT JOIN ( SELECT DISTINCT
ID
FROM B
) AS B ON A.ID = B.ID
--测试数据
if not object_id(N'Tempdb..#A') is null
drop table #A
Go
Create table #A([ID] int,[NAME] nvarchar(22))
Insert #A
select 1,N'AA' union all
select 2,N'BB' union all
select 3,N'CC'
GO
if not object_id(N'Tempdb..#B') is null
drop table #B
Go
Create table #B([ID] int,[NOTE] nvarchar(23))
Insert #B
select 1,N'ABC' union all
select 1,N'ABC' union all
select 2,N'ABC' union all
select 2,N'ABC'
Go
--测试数据结束
SELECT #A.ID ,
NAME ,
CASE WHEN MAX(#B.ID) IS NOT NULL THEN '是'
ELSE '否'
END AS 是否出现
FROM #A
LEFT JOIN #B ON #B.ID = #A.ID
GROUP BY #A.ID ,
NAME