SELECT Name
FROM Names n
WHERE EXISTS (SELECT NameIDs FROM NameList nl WHERE n.nameID LIKE '%'+nl.nameIDs);
我正在尝试查询此表,它似乎只返回第一个值。名称列表是一个逗号分隔的值单元格,可能会有多个出现。
我想知道是否有人可以提供帮助。
答案 0 :(得分:2)
如果它的逗号分隔,那么你需要在nl.nameID之后使用通配符%,因为该值可以出现在逗号分隔字符串中间的任何位置。
SELECT Name
FROM Names n
WHERE EXISTS (SELECT NameIDs FROM NameList nl WHERE n.nameID LIKE '%'+nl.nameIDs+'%');
答案 1 :(得分:0)
我认为你有倒退的比较。试试这个:
SELECT Name
FROM Names n
WHERE EXISTS (SELECT NameIDs FROM NameList nl WHERE ','+nl.nameIDS+',' like '%,'+n.nameID+',%'