A 表
id B_id
1 1,2,3
2 2,3
B表
B_id name
1 aa
2 bb
3 cc
4 dd
我要得到 A、B两表关联的结果。
当A表id=1时
得到
id B_id name
1 1 aa
1 2 bb
1 3 cc
select distinct a.*,c.name from (
select a.id, substring(a.[b_id],b.number,charindex(',',a.[b_id] + ',',b.number)-b.number) as b_id
FROM table1 a,master..spt_values b
WHERE b.type='p'and substring(',' + a.[b_id],b.number, 1)=','
)a left join table2 c on a.b_id=c.b_id