Replace关键字的妙用查询是否包含某个特定字符串

在sql server中Replace关键字主要是用来将字符串中的某个字符替换成别的字符,今天要逆向思维,它还可以用来查询是否包含某个特定字符串,例如给定下面数据集
 
期望从这个数据集中获取包含“aaa”字符的记录,注意第2条数据不是包含“aaa”,而是包含“aaaa”。期望的”“结果如下:
 
传统的思维肯定是想如何查出包含有3个a的字符串,有的人会像用like,但这样会连同4个a也查出来。这里我们就思考用Replace替换掉字符串中的“aaa”,如果能够替换掉,那就证明该字符串中含有这个字符,替换掉了以后肯定和原字符串不一样,因此有了下面的SQL出炉。


代码如下:

SELECT * FROM [master].[dbo].[Table_5]
WHERE REPLACE(','+strNum+',', ',aaa,', '') <> ','+strNum+','

(0)

相关推荐

  • sqlserver replace函数 批量替换数据库中指定字段内指定字符串参考方法

    语法 REPLACE ( 'string_e­xpression1' , 'string_e­xpression2' , 'string_e­xpression3' ) 参数说明 'string_e­xpression1' 待搜索的字符串表达式.string_e­xpression1 可以是字符数据或二进制数据. 'string_e­xpression2' 待查找的字符串表达式.string_e­xpression2 可以是字符数据或二进制数据. 'string_e­xpression3' 替换

  • Replace关键字的妙用查询是否包含某个特定字符串

    在sql server中Replace关键字主要是用来将字符串中的某个字符替换成别的字符,今天要逆向思维,它还可以用来查询是否包含某个特定字符串,例如给定下面数据集  期望从这个数据集中获取包含"aaa"字符的记录,注意第2条数据不是包含"aaa",而是包含"aaaa".期望的""结果如下:  传统的思维肯定是想如何查出包含有3个a的字符串,有的人会像用like,但这样会连同4个a也查出来.这里我们就思考用Replace替换掉

  • 使用正则表达式找出不包含特定字符串的条目

    做日志分析工作的经常需要跟成千上万的日志条目打交道,为了在庞大的数据量中找到特定模式的数据,常常需要编写很多复杂的正则表达式.例如枚举出日志文件中不包含某个特定字符串的条目,找出不以某个特定字符串打头的条目,等等. 使用否定式前瞻 正则表达式中有前瞻(Lookahead)和后顾(Lookbehind)的概念,这两个术语非常形象的描述了正则引擎的匹配行为.需要注意一点,正则表达式中的前和后和我们一般理解的前后有点不同.一段文本,我们一般习惯把文本开头的方向称作"前面",文本末尾方向称为&

  • MySql带OR关键字的多条件查询语句

    上篇文章给大家介绍了Mysql带And关键字的多条件查询语句,下面给大家介绍MySql带OR关键字的多条件查询语句,感兴趣的朋友可以一起学习. MySQL带OR关键字的多条件查询,与AND关键字不同,OR关键字,只要记录满足任意一个条件,就会被查询出来. SELECT * | {字段名1,字段名2,--} FROM 表名 WHERE 条件表达式1 OR 条件表达式2 [-- OR 条件表达式n]; 查询student表中,id字段值小于15,或者gender字段值为nv的学生姓名 可以看出,返回

  • Mysql带And关键字的多条件查询语句

    MySQL带AND关键字的多条件查询,MySQL中,使用AND关键字,可以连接两个或者多个查询条件,只有满足所有条件的记录,才会被返回. SELECT * | {字段名1,字段名2,--} FROM 表名 WHERE 条件表达式1 AND 条件表达式2 [-- AND 条件表达式n]; 查询student表中,id字段值小于16,并且,gender字段值为nv的学生姓名 可以看出,查询条件必须都满足,才会返回 查询student表中,id字段值在12.13.14.15之中,name字段值以字符串

  • Mybatis查询条件包含List的情况说明

    目录 查询条件包含List的情况 在mybatis中查询的语句 查询条件带List和其他类型字段 需求 查询条件包含List的情况 在mybatis中进行搜索时,有时候参数中包含了List,比如传入参数: public class FileRequest{ //文件类型 private Integer fileType; //状态 private List<Status> statusList; } public class Status{ //注册状态 private Integer reg

  • 详解正则表达式后面不要包含指定的字符串内容

    以前只会/<abc(?!def).+>/.exec("<abcdef>\n<abczzz>"),匹配到<abczzz>,这种简单的固定写法,但实际使用次数几乎趋近于0. 很多场景不能写死abc,顺理成章的就写成了/<.+(?!def).+>/.exec("<abcdef>\n<abczzz>"),咦?咋把前面的匹配到了!从入门到放弃. 昨天(2019-04-07)随手写了一下/<

  • JavaScript判断一个字符串是否包含指定子字符串的方法

    本文实例讲述了JavaScript判断一个字符串是否包含指定子字符串的方法.分享给大家供大家参考.具体分析如下: 下面的JS代码,为String对象定义了一个contains方法用于判断字符串是否包含子字符串,非常有用. if (!Array.prototype.indexOf) { Array.prototype.indexOf = function(obj, start) { for (var i = (start || 0), j = this.length; i < j; i++) {

  • php查询相似度最高的字符串的方法

    本文实例讲述了php查询相似度最高的字符串的方法.分享给大家供大家参考.具体如下: 根据传入的字符串和数组,返回数组中相似度最高的字符串 1. PHP代码如下: function closest_word($input, $words) { $shortest = -1; foreach ($words as $word) { $lev = levenshtein($input, $word); if ($lev == 0) { $closest = $word; $shortest = 0;

  • js处理包含中文的字符串实例

    场景: js中String类型自带的属性length获取的是字符串的字符数目,但是前端经常会需要限制字符串的显示长度,一个中文字符又大概占两个英文小写字符的显示位置,所以中英文混合的情况下用length值来判断显示长度往往并不正确. 常规的解决办法是遍历字符串,中文字符计长度2,非中文字符计长度1,通过新计算出来长度总和来限制字符串的显示长度.看代码↓↓↓ var Tools ={ //是否包含中文 hasZh: function(str){ for(var i = 0;i < str.leng

  • C#判断一个字符串是否包含另一个字符串的方法

    本文实例讲述了C#判断一个字符串是否包含另一个字符串的方法.分享给大家供大家参考.具体如下: string a="china"; string b="i"; if (a.IndexOf(b) > -1) { //包含指定的字符串,执行相应的代码 } 希望本文所述对大家的C#程序设计有所帮助.

随机推荐