Sql server 如何基于CSV列过滤Sql表

Sql server 如何基于CSV列过滤Sql表,sql-server,csv,filter,Sql Server,Csv,Filter,如何根据SQL表的CSV列中存在的值筛选SQL表。 详细地说,我有一个表,它有一个CSV列,包含逗号分隔形式的整数,如 12,234,32,55 121,64,43,65 54,25,112,12 996,612,55,3 etc. 现在,我想从这个表中找出csv列中值为12(十二)的行,即具有csv记录的行 12,234,32,55 54,25,112,12 only 请帮忙 Select * from Tablex where (Col like '%,12,%') or (

如何根据SQL表的CSV列中存在的值筛选SQL表。 详细地说,我有一个表,它有一个CSV列,包含逗号分隔形式的整数,如

12,234,32,55 
121,64,43,65
54,25,112,12
996,612,55,3  etc.
现在,我想从这个表中找出csv列中值为12(十二)的行,即具有csv记录的行

12,234,32,55
54,25,112,12 only
请帮忙

Select *
from Tablex 
where 
(Col like '%,12,%') 
 or (Col = '12')
 or LEFT(Col,3)='12,'
 or RIGHT(col,3)=',12'
或者像Love2Learn建议的那样更好

 Select * From Tablex Where ','+Col+',' Like '%,12,%' 

你可以这样做来简化它。。。从表格X中选择*,其中“,”+Col+“,”如“%,12,%”谢谢@Love2Learn,它工作得非常好。。。你能把它贴出来作为答案吗,这样我就可以接受了…:-)也谢谢@bummi的回答。。。它也很有效,但对我来说有点难以理解me@bummi答案大致相同。Bummi,你能将你的答案更新为缩写形式以便OP能接受你的答案吗?最好重新设计你的模式,使每个值都存储在一个单独的行中。您不需要将多个值填充到一个列中。