关于SQLSERVER存储 分割字符,在线等,谢谢 @ID 是一个值吗?--是的话,这样就行了select * from News Where Nid LIKE '%'+RTRIM(@ID)+'%' 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1,sqlserver不支持数组,可以用表变量代替。2,你的情况不需要拆分。有like,charindex,patindex等都可实现。但是一定要把分隔符加到前后辍上,否则会误 取。如:select * from news where charindex(',' + rtrim(nid) +',' , ',%' + @id + '%,')>0 拆分字符的方法很多,2000写函数,或者动态SQL,2005用FOR XML方法,你GOOGLE一下,很多,或者CSDN搜索一下,不过如楼上所说,你的需求不用这样. 上面手误设nid为列名,@id为传入的串,比如1,1,3,4,5select * from news where charindex(',' + rtrim(nid) +',' , ',' + @id + ',')>0 select * from news where ','+RTRIM(@ID)+',' like '%,' + rtrim(nid) + ',%' select * from news where patindex('%,' + rtrim(nid) +',' , ',' + @id + ',%')>0 上面fcuandy我按你的做,在程序中出错将 varchar 值 ',' 转换为数据类型为 int 的列时发生语法错误 不需要拆分字符串……select * from News where charindex(','+rtrim(@id)+',',','+rtrim(Nid)+',')>0 好了,谢谢各位了,再次谢谢szx1999 ,fcuandy ,wufeng4552 终于实现了这就去结帖了 SQL安全问题 如何让存储过程中的表名可变 请问如何在sql2005 创建数据库登陆用户 为什么要在存储过程的参数中设置默认值?有什么用意吗? 菜鸟求各位老大帮我看看 in和使用参数问题 这句SQL怎么写? 求一SQL语句 请教大大们的sql语句,思索了好久也不行.大大们帮助一下 高分提问,如何连网? 问一个SQL SERVER中有关事务回滚的问题? 100分请教游标的使用! 请求一个SQL查询语句
select * from news where charindex(',' + rtrim(nid) +',' , ',%' + @id + '%,')>0
很多,或者CSDN搜索一下,不过如楼上所说,你的需求不用这样.
select * from news where charindex(',' + rtrim(nid) +',' , ',' + @id + ',')>0
select * from news where ','+RTRIM(@ID)+',' like '%,' + rtrim(nid) + ',%'
将 varchar 值 ',' 转换为数据类型为 int 的列时发生语法错误
select * from News where charindex(','+rtrim(@id)+',',','+rtrim(Nid)+',')>0