2013-04-17 40 views
0
SELECT Name 
FROM Names n 
WHERE EXISTS (SELECT NameIDs FROM NameList nl WHERE n.nameID LIKE '%'+nl.nameIDs); 

我想查询此表,它似乎只返回第一个值。名称列表是逗号分隔的值单元格,并且可能有多个它的出现次数。SQL查询帮助 - 如声明

我想知道是否有人可以帮忙。

回答

2

如果逗号分隔,然后你需要有nl.nameIDs后通配符%过的值可以在逗号分隔字符串中间的任何地方occurr。

SELECT Name 
FROM Names n 
WHERE EXISTS (SELECT NameIDs FROM NameList nl WHERE n.nameID LIKE '%'+nl.nameIDs+'%'); 
+0

谢谢:)惊人 – user1840255

0

我认为你有反向比较。试试这个:

SELECT Name 
FROM Names n 
WHERE EXISTS (SELECT NameIDs FROM NameList nl WHERE ','+nl.nameIDS+',' like '%,'+n.nameID+',%'