表 BD_Employe
| ID | name | 
| 1 | A1 | 
| 
 2  | 
A2 | 
| 
 3  | 
A3 | 
表 bd_mfc
| ID | NAme | DLManage_C | isdl | 
| 1 | mfc1 | 1,2,3 | 1 | 
| 2 | mfc2 | 0 | |
| 3 | mfc3 | 2,3 | 1 | 
create function f_split(@c varchar(2000),@split varchar(2)) 
returns @t table(col varchar(20)) 
as 
    begin 
    
      while(charindex(@split,@c)<>0) 
        begin 
          insert @t(col) values (substring(@c,1,charindex(@split,@c)-1)) 
          set @c = stuff(@c,1,charindex(@split,@c),‘‘) 
        end 
      insert @t(col) values (@c) 
      return 
    end 
go 
DECLARE @str VARCHAR(200)=‘‘
SET @str=(SELECT TOP 1 DLManage_C FROM bd_mfc   WHERE isdl=1 and id =1)
  SELECT * FROM BD_Employee  WHERE rtrim(id) IN(
select * from dbo.f_split(@str,‘,‘) 
)
drop function f_split 
原文:https://www.cnblogs.com/hehuarong/p/13156484.html