mysql 截取指定位置后面的所有的字符
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 截取指定位置后面的所有的字符相关的知识,希望对你有一定的参考价值。
字段的内容是这个样子 G3_555 请问怎么截取下划线 _ 后面的所有的内容?
也就是得到555。但然下划线后面的内容长度是不定的。
不好意思,还有啊。怎么截取G和_ 之间的内容呢?此例是 3.
1、mysql截取字符串后几位的两个常用函数:right()和substring()。
2、right()函数语法示例。
3、回车执行,查看right()函数截取的字符串。
4、substring()函数语法示例。
5、回车执行,查看substring()函数截取的字符串。
1、在使用substring函数时,我们可以看到这个函数的参数,第一个就是要截取的字符串,第二个是开始位置,第三个为要截取的长度。
2、我们先对一个已知的字符串来进行截取,代码如图,从0开始,截取5个字符。
3、但执行后,你会发现结果里只有四个字符。
4、其实在sql里,和其他的开发语言有点区别,不是从0开始计算的,而是从1开始的,我们把函数的第二个参数从0改为1。
5、再次执行sql语句,就可以看到得到了正确的结果了。
mysql 截取指定位置后面的所有的字符可以使用命令:
SELECT SUBSTRING_INDEX( 'G3_555') , '_' , -1) AS str_1 FROM tablename;
其中SUBSTRING_INDEX是截取字符串的函数。
'G3_555' , '_' , -1分别表示从第一个_符号开始截取_右边的字符串。
扩展资料
mysql sql语句中SUBSTRING_INDEX的用法介绍:
SUBSTRING_INDEX(s, delimiter, number) 返回从字符串 s 的第 number 个出现的分隔符 delimiter 之后的子串。
如果 number 是正数,返回第 number 个字符左边的字符串。
如果 number 是负数,返回第(number 的绝对值(从右边数))个字符右边的字符串。
例如:
SELECT SUBSTRING_INDEX('a*b','*',1)
返回:a
SELECT SUBSTRING_INDEX('a*b','*',-1)
返回:b
SELECT SUBSTRING_INDEX(SUBSTRING_INDEX('a*b*c*d*e','*',3),'*',-1)
返回:c
-1表示则是从后倒数出现1次'_' ,到字符串结束。
select substring(截取的列名, 2,INSTR(截取的列名, '_')-2) from 表名; //截取G和_ 之间的内容
// substring(被截取字段,从第几位开始截取,截取长度)
昨晚来不及做出来,今天补上 参考技术D mysql> SELECT
-> SUBSTRING('G3_555', INSTR('G3_555', '_') + 1);
+------------------------------------------------+
| SUBSTRING('G3_555', INSTR('G3_555', '_') + 1) |
+------------------------------------------------+
| 555 |
+------------------------------------------------+
1 row in set (0.00 sec)本回答被提问者和网友采纳
js 截取指定字符后面/前面的所有字符串
参考技术A let str = ‘张三>李四>王五’截取最后一个>前面的字符串
let index = str .lastIndexOf(">")
str =str .substring(0,index);
console.log(str) //张三>李四
截取最后一个>后面的字符串
let index = str .lastIndexOf(">")
str =str .substring(index+1,str.length);
console.log(str) //王五
以上是关于mysql 截取指定位置后面的所有的字符的主要内容,如果未能解决你的问题,请参考以下文章