sqlserver截取分割字符串问题

我有两个表 表A,表B 表A中有字段CategoryID,也是表B的主键,但是表A中CategoryID字段里有多个值,用“,”隔开了,想请教一下各位大神 怎样用表A 中的字段作为连接表B的条件图片说明图片说明](https://img-ask.csdn.net/upload/201508/31/1440998841_125141.png)

各位大神 请帮帮忙啊

程序中分割吧,好控制点

select * from a left join b on charindex(a.CategoryID,b.CategoryID,1)>0

同意楼上的办法,但需要该进一下,否则10和1也会比配上,我一般是做法是
另外被查找的字符串放在第二个参数

 select * from a left join b on charindex(','+b.CategoryID+',',','+a.CategoryID+',',1)>0

SELECT  CHARINDEX(  ',1,',',10,'),CHARINDEX(  '1','10')