sql 字符串切割为条件进行查询

Posted Run

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql 字符串切割为条件进行查询相关的知识,希望对你有一定的参考价值。

关键字 CHARINDEX     

CHARINDEX 可以返回某个字段在一串文字中出现的位置,跟String的indexOf用法类似,相同于%LIKE%。

 

用法例如:

表:

 

SQL语句:

select * from tt where

CHARINDEX( name ,(select xiaji from tt where name=\'aa\') )>0

or name =\'aa\'


---------------------------------
select * from tt where

CHARINDEX( \',\'+ name + \',\',(select \',\'+ xiaji +\',\' from tt where name=\'aa\') )>0

or name =\'aa\'

----------------------------------

select * from tt where

CHARINDEX( \',\'+ name + \',\',(select \',\'+ xiaji +\',\' from tt where name=\'aa\') )>0

 

结果:

第一个结果:因为查询类似于%like% , 没有加逗号,所以结果中会有包含的字符的匹配项。

 

以上是关于sql 字符串切割为条件进行查询的主要内容,如果未能解决你的问题,请参考以下文章

将多条查询结果作为like查询条件

关于SQLserver 存储过程 如何切割一个字符串 转化为数组

在 Rails 上为连接、限制、选择等(不是条件)的 SQL 片段安全地转义字符串

解决mysql查询,in条件参数为带逗号的字符串,查询结果错误

SQL拆分逗号分隔的字符串

SQL 模糊查询