MySQL 字符串截取函数:left(), right(), substring(), substring_index()。还有 mid(), substr()。其中,mid(), substr() 等价于 substring() 函数,substring() 的功能非常强大和灵活。


1. 字符串截取:left(str, length)



mysql> select left('example.com', 3);

+-------------------------+

| left('example.com', 3) |

+-------------------------+

| exa                     |

+-------------------------+

2. 字符串截取:right(str, length)



mysql> select right('example.com', 3);

+--------------------------+

| right('example.com', 3) |

+--------------------------+

| com                      |

+--------------------------+



实例:



#查询某个字段后两位字符

select right(last3, 2) as last2 from historydata limit 10;

#从应该字段取后两位字符更新到另外一个字段

update `historydata` set `last2`=right(last3, 2);





3. 字符串截取:substring(str, pos); substring(str, pos, len)



3.1 从字符串的第 4 个字符位置开始取,直到结束。



mysql> select substring('example.com', 4);

+------------------------------+

| substring('example.com', 4) |

+------------------------------+

| ple.com                    |

+------------------------------+

3.2 从字符串的第 4 个字符位置开始取,只取 2 个字符。



mysql> select substring('example.com', 4, 2);

+---------------------------------+

| substring('example.com', 4, 2) |

+---------------------------------+

| pl                              |

+---------------------------------+

3.3 从字符串的第 4 个字符位置(倒数)开始取,直到结束。



mysql> select substring('example.com', -4);

+-------------------------------+

| substring('example.com', -4) |

+-------------------------------+

| .com                          |

+-------------------------------+

3.4 从字符串的第 4 个字符位置(倒数)开始取,只取 2 个字符。



mysql> select substring('example.com', -4, 2);

+----------------------------------+

| substring('example.com', -4, 2) |

+----------------------------------+

| .c                               |

+----------------------------------+

我们注意到在函数 substring(str,pos, len)中, pos 可以是负值,但 len 不能取负值。



4. 字符串截取:substring_index(str,delim,count)



4.1 截取第二个 '.' 之前的所有字符。



mysql> select substring_index('www.example.com', '.', 2);

+------------------------------------------------+

| substring_index('www.example.com', '.', 2) |

+------------------------------------------------+

| www                                  |

+------------------------------------------------+

4.2 截取第二个 '.' (倒数)之后的所有字符。



mysql> select substring_index('www.example.com', '.', -2);

+-------------------------------------------------+

| substring_index('www.example.com', '.', -2) |

+-------------------------------------------------+

| com.cn                                          |

+-------------------------------------------------+

4.3 如果在字符串中找不到 delim 参数指定的值,就返回整个字符串



mysql> select substring_index('www.example.com', '.coc', 1);

+---------------------------------------------------+

| substring_index('www.example.com', '.coc', 1) |

+---------------------------------------------------+

| www.example.com                               |

+---------------------------------------------------+

MySQL substring:字符串截取 (转载)的更多相关文章

  1. mysql substring函数截取值后赋给一个declare变量

    今天写的一个mysql存储过程涉及到对一个传入参数的字符串截取,然后需要判断截取字符串进行一系列操作,最开始用select  subtring() into 这样的方法将截取值赋于declare变量直 ...

  2. mysql replace substring 字符串截取处理

    SELECT a1,a2,replace(a2, "豫ICP备16006180号-", "") a22,a3,a4,a5 FROM `aaab` order b ...

  3. js substr和substring字符串截取

    substr(start,length)第一个参数是开始位置(注:start的开始是从0开始,看到好多博客上面是从1开始,在火狐和谷歌执行了一下是从0开始),第二个参数是截取字符串的长度(可以省略,表 ...

  4. 解决 ASP.NET Core MySql varchar 字符串截取(长度 255)

    ASP.NET Core 中使用 MySql,如果字段类型为varchar,不管设置多少长度,插入或更新数据的时候,会自动截断(截取 255 长度的字符). 出现问题的原因,就是使用了MySql.Da ...

  5. 【MySQL】字符串截取之substring_index

    substring_index(str,delim,count)       str:要处理的字符串       delim:分隔符       count:计数 例子:str=www.baidu.c ...

  6. mysql 和字符串截取相关的知识点

    LOCATE(',','123,456') - 1) SELECT LEFT('123,456',3); SELECT LEFT('123,456',LOCATE(',','123,456') - 1 ...

  7. mysql根据字符截取字符串(总结)

    mysql根据字符截取字符串(总结) 1.1 前言   为结合自己平常查资料的习惯,我会先给出例子,然后再对相关知识进行详解.该案例使用到的函数为:SUBSTRING_INDEX 1.2 需要实现的实 ...

  8. Java中怎样实现字符串截取

    使用substring()对字符串进行截取: /** * str.indexOf()查找下标 * substring();//字符串截取 * length();//字符串长度 * */ @Test p ...

  9. MySQL字符串函数substring:字符串截取

    MySQL 字符串截取函数:left(), right(), substring(), substring_index().还有 mid(), substr().其中,mid(), substr() ...

随机推荐

  1. WCF Throttling 限流的三道闸口

    WCF Throttling 限流的三道闸口 一.WCF Throttling  流量限制简介 我们期望WCF服务端能够处理尽可能多的并发请求,但是资源是有限的,服务不可能同时处理无限多的并发请求,如 ...

  2. 第三讲:WCF介绍(3)

    代码 https://yunpan.cn/cPns5DkGnRGNs   密码:3913   前面我们通过一个小的例子,大概了解的WCF. 这里我们补充下  EndPoint 配置  A,B,C  中 ...

  3. Get,Post请求中文乱码问题有效解决方法

    本文主要介绍如何有效解决web请求中的乱码问题,其实解决方法有很多种,不同的请求类型解决方法也不相同. 本文只介绍最方便的一种: 1.先修改jsp中的编码方式 2.针对Post方式提交的请求如果出现乱 ...

  4. webservice入门(2)开发ws程序

    因为webservice分为服务端和客户端,所以如果要学习的话,那么肯定是包括这两部分的了. 1.开发服务端的webservice: 使用jdk开发ws其实很简单,只是需要一些注解:最重要的是 @We ...

  5. 第 11 章 进度条媒体对象和 Well 组件

    学习要点: 1.Well 组件 2.进度条组件 3.媒体对象组件 主讲教师:李炎恢 本节课我们主要学习一下 Bootstrap 的三个组件功能:Well 组件.进度条组件.媒体对象组件. 一.Well ...

  6. Spark集群 + Akka + Kafka + Scala 开发(3) : 开发一个Akka + Spark的应用

    前言 在Spark集群 + Akka + Kafka + Scala 开发(1) : 配置开发环境中,我们已经部署好了一个Spark的开发环境. 在Spark集群 + Akka + Kafka + S ...

  7. 通过“回文字算法”复习C++语言。

    一.什么是回文字 给定一个字符串,从前往后读和从后往前读,字符串序列不变.例如,河北省农村信用社的客服电话是“96369”,无论从后往前读,还是从前后往后读,各个字符出现的位置不变. 二.功能实现 ( ...

  8. velocity-tools-beta1.jar与velocity-tools.jar不兼容

    今天在升级了某些依赖jar的版本启动一项目后,velocity中的有些定义在common.vm中变量居然变成了null,没能include进来导致,而没升级的环境是ok的,经过反查,最后发现是将vel ...

  9. 【转】Nginx区分PC或手机访问不同网站

    原文链接:http://www.nginx.cn/784.html 近几年来,随着手机和pad的普及,越来越多的用户选择使用移动客户端访问网站,而为了获取更好的用户体验,就需要针对不同的设备显示出最合 ...

  10. ADO.NET(数据访问技术)

    简单的说,C#已经内置了一些类,我们可以利用这些类来访问数据库.在这里,我们假设读者已经熟悉SqlServer数据库或者其它数据库(我以后也会补上相关内容).我们如何来实现这项技术呢?大致可以分为三个 ...