现在位置: 首页 > 博客文章 > 电脑相关 > IT开发 > 数据库 > MySQL > 正文
MySQL字符串的截取函数
2015年08月11日 17:26:13 MySQL ⁄ 共 851字 暂无评论 ⁄ 被围观 2,582次

在 MySQL 中,如何把某字段中的字符串截取,获取自己需要的那一段字串呢?

比如,我这里有个字符串:

  1. 1/2015#HEBEI QINHUANGDAO#1507#VRHC9#100#LADEN 2/ABI#ABASHIRI#JAPAN 3/2015-07-01 16:38#2015-07-08 16:38/LOAD 4/1.0#2.0#3.0###0.0# 5/1#2#S#3#4#W 6/S/5 7/11.00#22.00#33.00 8//###### 9/ETB/POSITION#11#22#S#33#44#W/REVERTING 10/1/2.0/3.0/4.0 11/5.0/6.0/7.0/8.0/9.0/10.0/11.0 12// 13/

如何从中截取“ /3”到“ /4”之间的字符串呢?

查了一下,MySQL提供了一下几个字符串截取函数。

1.从左开始截取字符串。

left(str, length)
说明:left(被截取字段,截取长度)

2.从右开始截取字符串。

right(str, length)
说明:right(被截取字段,截取长度)

3.从指定位置截取字符串,或者截取指定长度字符串。

substring(str, pos)
substring(str, pos, length)
说明:substring(被截取字段,从第几位开始截取)
substring(被截取字段,从第几位开始截取,截取长度)

4.按关键字截取字符串。

substring_index(str,delim,count)
说明:substring_index(被截取字段,关键字,关键字出现的次数)
注意:如果关键字出现的次数是负数 如-2 则是从后倒数,到字符串结束。

如果想满足上面的截串需求,看来只有第 4 个函数才行。SQL 语句如下:

  1. SUBSTRING_INDEX(SUBSTRING_INDEX(str, ' 4/', 1),' 3/',-1) AS str

截取结果为:2015-07-01 16:38#2015-07-08 16:38/LOAD

给我留言

留言无头像?