当前位置: 代码迷 >> Sql Server >> 初学者有关问题,字符串比较
  详细解决方案

初学者有关问题,字符串比较

热度:49   发布时间:2016-04-24 09:46:44.0
菜鸟问题,字符串比较

S表中A列字符串行

1901,1361,1362
1361,1362,1364
1361,2456,2346,1902,1367
2456,2346,1902,2376


R表中的A列
1901
1361
2456
2346


我要在S表中找到包含R表中A列的
------解决思路----------------------
Select S.A From S Where Exists(Select Top 1 1 From R  Where S.A = R.A)

------解决思路----------------------
SELECT
S.A
FROM
S LEFT JOIN R ON ','+S.A+',' LIKE '%,'+R.A+',%'
WHERE R.A IS NOT NULL GROUP BY S.A

 可以这样
也可以这样
SELECT
S.A
FROM
S
WHERE EXISTS(SELECT 1 FROM R WHERE ','+S.A+',' LIKE '%,'+R.A+',%')

------解决思路----------------------
可以这样
SELECT
S.*
FROM
S
WHERE EXISTS(SELECT 1 FROM R WHERE ','+S.A+',' LIKE '%,'+R.A+',%')

------解决思路----------------------
select * from s where A in (select a from R)
  相关解决方案