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

时间:2021-05-02

在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+','

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章