22,209
社区成员
发帖
与我相关
我的任务
分享
现在语句一、
SELECT chanyurenid FROM hr_Training_records WHERE id=131
查询结果集:
chanyurenid (nvarchar)
122,195,196,193,215,216
语句二、
SELECT id FROM userinfo
查询结果集:
id (int)
122
195
196
193
215
216
select *
from userinfo a
where exists
(select 1
from hr_Training_records b
where b.id=131 and charindex(','+rtrim(a.id)+',',','+b.chanyurenid+',',1)>0)
IF OBJECT_ID('tempdb..#temp','U') IS NOT NULL DROP TABLE #temp
CREATE TABLE #temp
(
chanyurenid nvarchar(100)
)
INSERT INTO #temp VALUES ('122,195,196,193,215,216')
SELECT T.c.value('.','int') AS chanyurenid
FROM (
SELECT CONVERT(XML,'<root><v>'+REPLACE(A.chanyurenid,',','</v><v>')+'</v></root>') AS id
FROM #temp AS A ) AS A
CROSS APPLY A.id.nodes('root/v') T(c)
SELECT *
FROM userinfo U
WHERE EXISTS ( SELECT 1
FROM hr_Training_records H
WHERE CHARINDEX(chanyurenid, CONVERT(VARCHAR, U.id)) > 0 ) --转换一下