sql怎样定位一个字符所在的位置?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql怎样定位一个字符所在的位置?相关的知识,希望对你有一定的参考价值。
常用的字符串函数,其作用可分为四大类:串接字符、截取字符、转换字符、其他作用的字符函数。串接,就是把单独的字符串组合为一个。如把人的姓和名串接在一起形成一个完整的姓名字符串。
截取,是指从字符串里提取出一部分字符,形成子串。可以分为截取字符、提取字符的位置。
转换,是指把一个字符串中的内容或形式变换成另一个内容或形式。分为内容转换和形式转换。
其他作用的字符函数:以上三种作用之外的其他字符函数。
下面详细介绍。
串接函数
可以通过+或者-,实现串接操作。在不同的数据库管理系统中,使用的串接符号不同。
在SQL SERVER中的代码为:SELECT ‘JOHN’+ ‘SON’
在mysql中的代码为:SELECT CONCAT(‘JHON’,‘SON’)
截取函数
1、SUBSTR(COLUMN NAME,STARING POSITION,LENGTH)
COLUMN NAME:字段名称
STARING POSITION:起始位置,即从第几个字符开始截取
LENGTH:长度,即截取多少个字符的长度
select emp_id,substr(emp_id,1,3) from employee
从雇员表中检索出雇员编号,雇员姓名两个字段。其中雇员姓名可通过从编号ID的前三个字符截取得到。
2、TRIM()、LTRIM()、RTRIM(),剪除字符串中的字符。
SQL 中的 TRIM 函数是用来移除掉一个字串中的字头或字尾。最常见的用途是移除字首或字尾的空白。这个函数在不同的资料库中有不同的名称:
MySQL: TRIM( ), RTRIM( ), LTRIM( )
Oracle: RTRIM( ), LTRIM( )
SQL Server: RTRIM( ), LTRIM( )
各种 trim 函数的语法如下:
TRIM ( [ [位置] [要移除的字串] FROM ] 字串): [位置] 的可能值为 LEADING (起头), TRAILING (结尾), or BOTH (起头及结尾)。 这个函数将把 [要移除的字串] 从字串的起头、结尾,或是起头及结尾移除。如果我们没有列出 [要移除的字串] 是什么的话,那空白就会被移除。
LTRIM(字串): 将所有字串起头的空白移除。
RTRIM(字串): 将所有字串结尾的空白移除 参考技术A mysql:positon(substr,str) 返回子串substr在str中第一次出现的位置
oracle:instr(c1,c2,I,J)
c1:被搜索的子串
c2:希望搜索的字符串
I:搜索开始位置,默认为1
J:第几次出现,默认为1
sqlserver:charindex(p1,p2,p3)返回字符串中某个指定的子串出现的开始位置
P1:要找寻的子串
p2:被搜索的字符串
p3:搜索开始位置
不知道你用的是什么数据库,其它数据库我不熟,你自己在网上找找资料吧
以上是关于sql怎样定位一个字符所在的位置?的主要内容,如果未能解决你的问题,请参考以下文章