SQL 查询使用int去查询nvarchar字段
Posted 二狗
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL 查询使用int去查询nvarchar字段相关的知识,希望对你有一定的参考价值。
如下 使用2 去查询一个 用逗号分隔开的字段下 有这个id的数据,可以用到数据库的内置函数charindex去查询
select * from Users where charindex(‘,‘+‘2‘+‘,‘,‘,‘+RoleID+‘,‘)>0
列下是 循环得到 数据 字段为逗号分隔的所有数据 放到一个字符串里
declare @i int
declare @u int
declare @str nvarchar(max)
set @i=1
set @u=(select count(*) from Users)
set @str=‘‘;
while @i<[email protected]
begin
set @str+=(select RoleID from (select ROW_NUMBER() over (order by id) ‘rowindex‘,* from Users)hh where hh.rowindex = @i)+‘,‘
set @[email protected]+1
end
set @str=SUBSTRING(@str,1,len(@str)-1)
print @str
select * from dbo.fn_Split1(@str,‘,‘)
select * from Users where charindex(‘2‘,RoleID)>0
declare @u int
declare @str nvarchar(max)
set @i=1
set @u=(select count(*) from Users)
set @str=‘‘;
while @i<[email protected]
begin
set @str+=(select RoleID from (select ROW_NUMBER() over (order by id) ‘rowindex‘,* from Users)hh where hh.rowindex = @i)+‘,‘
set @[email protected]+1
end
set @str=SUBSTRING(@str,1,len(@str)-1)
print @str
select * from dbo.fn_Split1(@str,‘,‘)
select * from Users where charindex(‘2‘,RoleID)>0
以上是关于SQL 查询使用int去查询nvarchar字段的主要内容,如果未能解决你的问题,请参考以下文章