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 个字符位置开始取,直到结束。注意是第4个字符的位置,而不是下标为4的字符位置。

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

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

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

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

| mple.com                    |

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

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

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

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

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

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

| mp                              |

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

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.cn', '.', 2);

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

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

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

| www.example                                  |

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

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

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

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

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

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

| com.cn                                          |

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

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

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

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

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

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

| www.example.com.cn                               |

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

mysql数据库中_截取数据_mysql数据库的字符串截取方法相关推荐

  1. 从mysql数据库中删除一行数据_mysql数据库删除一行数据

    [MySQL]命令行工具和基本操作 原文:[MySQL]命令行工具和基本操作 一 MySQL命令行工具  (查看帮助 ---help,或 -?) 1)MySQL MySQL是一个简单的SQL外壳(有G ...

  2. mysql数据库中插入表信息_mysql数据库中插入表

    通过binlog恢复mysql数据库 在上一篇文章,我们讲解了有关mysql的binlog日志的基础知识.这篇文章,我们来讲解如何通过mysql的binlog日志来恢复数据库. 在使用binlog日志 ...

  3. mysql批量写入100万数据_Mysql数据库实践操作之————批量插入数据(100万级别的数据)-阿里云开发者社区...

    第一种方法:使用insert into 插入 从Redis每次获取100条数据,根据条件去插入到Mysql数据库中: 条件: 如果当前队列中的值大于1000条,则会自动的条用该方法,该方法每次获取从队 ...

  4. mysql数据库中邮箱的属性_MySQL——数据库的操作、属性

    操作数据库 > 操作数据库中的表 > 操作数据库中表的数据 注意:mysql关键字不分区大小写 1.1.操作数据库 1.创建数据库 CREATE DATABASE [IF NOT EXIS ...

  5. mysql数据库中count的作用_MySQL数据库中的count的用法

    1.概念 在开发系统的时候,可能经常需要计算一个表的行数,比如一个交易系统的所有变更记录总数.这时候你可能会想,一条select count(*) from t 语句不就解决了吗? 但是,会发现随着系 ...

  6. mysql数据库中常用的类型_MySQL数据库中常用字段类型

    MySQL数据库中常用字段类型 整数型:TINYINT,SMALLINT,INT,BIGINT 小数型:FLOAT,DOUBLE,DECIMAL(M,D) 字符型:CHAR,VARCHAR 日期型:D ...

  7. mysql插10万条数据_MySQL数据库插入100w条数据要花多久?

    MySQL数据库插入100w条数据要花多久? 1.多线程插入(单表) 2.多线程插入(多表) 3.预处理SQL 4.多值插入SQL 5.事务(N条提交一次) # 多线程插入(单表) 问:为何对同一个表 ...

  8. 下列有关mysql数据库中的null值_MySQL数据库中与 NULL值有关的问题

    对于SQL的新手,NULL值的概念常常会造成混淆,他们常认为NULL是与空字符串"相同的事.情况并非如此.例如,下述语句是完全不同的: mysql> INSERT INTO my_ta ...

  9. mysql清空数据库中所有表数据_清空mysql数据库所有表数据

    1,查看数据库状态 及启动停止 /etc/init.d/mysqld status/etc/init.d/mysqld start/etc/init.d/mysqld stop 2,给用户配置初始密码 ...

最新文章

  1. 区块链之智能合约详解
  2. 起售价近5500,嘲讽了iPhone X的华为Mate 10却没用上人脸识别
  3. linux获取fifo中的数据数量,Linux select()和多个套接字的FIFO排序?
  4. java对象排序_java对象排序(Comparable)详细实例
  5. 对外星智能的搜索得到了重大的升级
  6. jquery总结06-动画事件03-淡入淡出效果
  7. ToastUtil【简单的Toast封装类】【未自定义Toast的显示风格】
  8. [转载] 【零基础学爬虫】python中的yield详解
  9. micropython移植教程_【教程】智能编程T-Watch手表初试micropython之电子秤教程
  10. 17.立体匹配——动态规划公式(Dynamic Programming Formulation),二维网格上的相干立体_4
  11. Golang实践录:命令行cobra库实例优化
  12. 第一天,搬家到博客园
  13. ref out 关键字用法与区别详解
  14. PHP使用CURL使用问题
  15. 如何在 Mac 上阻止 FaceTime 通话和 iMessage 信息?
  16. 注册cad中文件未找到html,acad(2014CAD出现未找到acad文件 求解)
  17. 虚拟服务器io,IO虚拟化:虚拟直接连接VMDc技术解析
  18. python list 添加噪声_在python中为信号添加噪声
  19. PS学习日记①初接触
  20. html5超级玛丽小游戏

热门文章

  1. 计算机学科技术前沿:互联网上信息可信性的现状
  2. 关于ttk的使用与安装
  3. 网络爬虫--12.【XPath实战】获取百度贴吧中的图片
  4. 缺氧游戏计算机,缺氧PC最低什么配置一览 你觉得高吗
  5. python 打包exe_python如何封装为exe
  6. 在启动HDFS时,针对集群中namenode无法识别datanode的问题的解决方法
  7. 关于android开发时,发生Error infalting classa com.baidu.mapapi.map.MapView的解决办法
  8. 打印英文年历C语言函数,C语言打印年历
  9. activiti 工作流设置并行审批_activity、jbpm5、snakerflow常用工作流审批流对比
  10. matlab功能块,Matlab GUI重用功能块