22,209
社区成员
发帖
与我相关
我的任务
分享
Select a.id,a.title,1 as iFlag
From #Tmp_Data a
Join #Tmp_Data1 b on charindex(cast(a.id as varchar),b.IDS)>0
union
Select a.id,a.title,0 as iFlag
From #Tmp_Data a
Join #Tmp_Data1 b on charindex(cast(a.id as varchar),b.IDS)=0
if object_id('tempdb..#Tmp_Data') is not null
drop table #Tmp_Data
CREATE TABLE #Tmp_Data(
id int,
title VARCHAR(50))
INSERT INTO #Tmp_Data
SELECT 1,'afafaa' UNION
SELECT 2,'dsaf'UNION
SELECT 3,'dsssaf'UNION
SELECT 4,'qqwe'UNION
SELECT 5,'ewrd'
if object_id('tempdb..#Tmp_Data1') is not null
drop table #Tmp_Data1
CREATE TABLE #Tmp_Data1(id int,title VARCHAR(50),IDs VARCHAR(50))
INSERT INTO #Tmp_Data1
VALUES ( 1, '111', '1,4,5')
Select a.id,Title,case when b.id is null then 0 else 1 end as iFlag
From #Tmp_Data a
Left Join (
Select a.id
From #Tmp_Data a
Join #Tmp_Data1 b on charindex(cast(a.id as varchar),b.IDS)>0
) b on a.id=b.id
id Title iFlag
----------- -------------------------------------------------- -----------
1 afafaa 1
2 dsaf 0
3 dsssaf 0
4 qqwe 1
5 ewrd 1
(5 row(s) affected)
select id, title
, isnull((select 1 from table2 where ','+table1ids+',' like '%,'+convert(varchar,table1.id)+',%'), 0) iflag
from table1