SQL中常用的字符串处理函数(一)
2022/4/29 19:13:39
本文主要是介绍SQL中常用的字符串处理函数(一),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
今天整理了些日常可能经常遇到的一些处理字符串的函数,有些可能在写SQL时突然间想不到如何使用,今天就给大家总结两个函数的应用方法,以备不时之需!记得点赞收藏!
CHARINDEX(expression1,expression2[,start_location])函数
解析:
expression1 必须,要查找的子字符串
expression2 必须,父字符串
start_location 可选,指定从父字符串开始查找的位置,为空时默认位置从1开始查找
作用:
判断一个字符串中是否包含另一个字符串。
从expression2字符串中指定的位置处开始查找是否包含expression1的字符串,如果能够从expression2字符串中查找到expression1字符串,则返回expression1字符串在expression2字符串中出现的位置,
反之,则返回0
注意:
CHARINDEX()函数的参数在SQL Server默认情况下大小写不敏感,但是在特殊的情况下,我们需要特意的去区分大小写,因此SQL Server专门提供了特殊的关键字用于查询时区分大小写,COLLATE Latin1_General_CS_AS(大小写敏感),COLLATE Latin1_General_CI_AS(大小写不敏感,和默认一样的效果,没必要多此一举)。
实例:
SELECT CHARINDEX('L','SQL数据库运维') --包含 --结果:3 SELECT CHARINDEX('R','SQL数据库运维') --不包含 --结果:0 SELECT CHARINDEX('l','SQL数据库运维'COLLATE Latin1_General_CS_AS) --大小写敏感 --结果:0
PATINDEX ( '%pattern%' , expression )函数
PATINDEX和CHARINDEX类似,PATINDEX也可以判断一个字符串中是否包含另一个字符串,两者的差异在于,CHARINDEX是全匹配,PATINDEX支持模糊匹配。
解析:
返回pattern字符串在表达式expression里第一次出现的位置,起始值从1开始算。
pattern字符串在expression表达式里没找到就返回0,对所有有效的文本和字符串都是有效的数据类型。
实例:
--类型一:PATINDEX ( '%pattern%' , expression ) --'%pattern%'的用法类似于 like '%pattern%'的用法,也就是模糊查找其pattern字符串是否在expression中找到,找到并返回其第一次出现的位置,否则返回0。 SELECT PATINDEX('%SQ%','SQL数据库运维SQL') --结果:1 --也就是SQ第一次出现的位置 --类型二:PATINDEX ( '%pattern' , expression ) --'%pattern' 类似于 like '%pattern'的用法,前面用模糊查找,也就是查找pattern的结束所在expression的位置,也就是从最后面开始匹配查找。 SELECT PATINDEX('%L','SQL数据库运维SQLLL') --结果:13 --也就是L在后面第一次出现的位置。 SELECT PATINDEX('%L','SQL数据库运维SQLLLS') --结果:0 --后面的第一个字母S和L不匹配,所以返回0 --类型三:PATINDEX ( 'pattern%' , expression ) --'pattern%'类似于 like 'pattern%'也就是前面用精确查找,后面模糊查找,也就相当于查询pattern首次出现的位置。 SELECT PATINDEX('SQL%','SQL数据库运维SQLLL') --结果:1 --也就相当于起始值 SELECT PATINDEX('SQL%','SSQL数据库运维SQLLL') --结果:0 --开头找不到就返回0,后面无论有多少都不管 --类型四:PATINDEX ( 'pattern' , expression ) --相当于精确匹配查找,也就是pattern,expression完全相等。 SELECT PATINDEX('SQL数据库运维','SQL数据库运维') --结果:1 --完全相等 SELECT PATINDEX('数据库运维','SQL数据库运维') --结果:0 --不完全相等
注:内容转载于微信公众号:SQL数据库运维,如需了解更多相关内容,请自行前往关注!
这篇关于SQL中常用的字符串处理函数(一)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-19永别了,微服务架构!
- 2024-05-15鸿蒙生态设备数量超8亿台
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?