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














以上是关于SQL 查询使用int去查询nvarchar字段的主要内容,如果未能解决你的问题,请参考以下文章

Microsoft SQL Server中条件字段是Nvarchar类型的,条件有中文的无法查询的原因及处理方法

SQL查询优化更新

sql 根据年份月份查询数据

SQL把查询出的一个列转换成行

如何在 SQL 中基于多个“标签”查询数据?

在 SQL 中连接 int 和 nvarchar 列