首页 > 代码库 > SQL 查询使用int去查询nvarchar字段
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<=@u
begin
set @str+=(select RoleID from (select ROW_NUMBER() over (order by id) ‘rowindex‘,* from Users)hh where hh.rowindex = @i)+‘,‘
set @i=@i+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<=@u
begin
set @str+=(select RoleID from (select ROW_NUMBER() over (order by id) ‘rowindex‘,* from Users)hh where hh.rowindex = @i)+‘,‘
set @i=@i+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字段
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。