mysql中字符串截取常用函数

mysql教程中字符串截取常用函数

mysql 字符串截取函数:
left()返回字符串str的最左面len个字符,
right()返回字符串str的最右面len个字符,
substring()从字符串str的起始位置pos返回一个子串,
substring_index()。回从字符串str的第count个出现的分隔符delim之后的子串。如果count是正数,返回最后的分隔符到左边(从左边数) 的所有字符。如果count是负数,返回最后的分隔符到右边的所有字符(从右边数)。

还有 mid(str,pos,len)
从字符串str返回一个len个字符的子串,从位置pos开始。使用from的变种形式是ansi sql92语法,

substr()。其中,mid(), substr() 等价于 substring() 函数,substring() 的功能非常强大和灵活。

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

mysql> select left('111cn.net', 3);
+-------------------------+
| left('111cn.net', 3) |
+-------------------------+
| sql                     |
+-------------------------+
 

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

mysql> select right('111cn.net', 3);
+--------------------------+
| right('111cn.net', 3) |
+--------------------------+
| com                      |
+--------------------------+
 

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

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

mysql> select substring('111cn.net', 4);
+------------------------------+
| substring('111cn.net', 4) |
+------------------------------+
| study.com                    |
+------------------------------+
 

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

mysql> select substring('111cn.net', 4, 2);
+---------------------------------+
| substring('111cn.net', 4, 2) |
+---------------------------------+
| st                              |
+---------------------------------+
 

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

mysql> select substring('111cn.net', -4);
+-------------------------------+
| substring('111cn.net', -4) |
+-------------------------------+
| .com                          |
+-------------------------------+
 

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

mysql> select substring('111cn.net', -4, 2);
+----------------------------------+
| substring('111cn.net', -4, 2) |
+----------------------------------+
| .c                               |
+----------------------------------+
 

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

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

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

mysql> select substring_index('www.111cn.net', '.', 2);
+------------------------------------------------+
| substring_index('www.111cn.net', '.', 2) |
+------------------------------------------------+
| www.zhutiai|
+------------------------------------------------+
 

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

mysql> select substring_index('www.111cn.net', '.', -2);
+-------------------------------------------------+
| substring_index('www.111cn.net', '.', -2) |
+-------------------------------------------------+
| com                                         |
+-------------------------------------------------+
 

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

mysql> select substring_index('www.111cn.net', '.coc', 1);
+---------------------------------------------------+
| substring_index('www.111cn.net', '.coc', 1) |
+---------------------------------------------------+
| www.111cn.net|
+---------------------------------------------------+

ltrim(str)
返回删除了其前置空格字符的字符串str。
mysql> select ltrim('  barbar');
        -> 'barbar'
rtrim(str)
返回删除了其拖后空格字符的字符串str。
mysql> select rtrim('barbar   ');
        -> 'barbar'
该函数对多字节是可靠的。  trim([[both | leading | trailing] [remstr] from] str)
返回字符串str,其所有remstr前缀或后缀被删除了。如果没有修饰符both、leading或trailing给出,both被假定。如果remstr没被指定,空格被删除。
mysql> select trim('  bar   ');
        -> 'bar'
mysql> select trim(leading 'x' from 'xxxbarxxx');
        -> 'barxxx'
mysql> select trim(both 'x' from 'xxxbarxxx');
        -> 'bar'
mysql> select trim(trailing 'xyz' from 'barxxyz');
        -> 'barx'
该函数对多字节是可靠的。

时间: 2024-10-31 03:22:17

mysql中字符串截取常用函数的相关文章

Vertica的这些事<六>—— SQL Server、Oracle、MySQL和Vertica数据库常用函数对比

SQL Server.Oracle.MySQL和Vertica数据库常用函数对比 Vertica数据库是HP公司新收购的用于BI方面的数据库. 绝对值 S:select abs(-1) value O:select abs(-1) value from dual M:select abs(-1) value from dual V:select abs(-1) 向上取整 S:select ceiling(-1.001) value O:select ceil(-1.001) value from

PHP中的一些常用函数收集

  这篇文章主要介绍了PHP中的一些常用函数收集,本文收集了一些时间日期.输出打印.常用字符串函数.常用数组方法,需要的朋友可以参考下 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63

MySQL中字符串与Num类型拼接报错的解决方法_Mysql

发现问题 图片地址如下 yun_qi_img/1473574486942944.jpg 需要实现的效果是要加上尺寸,如以下效果 yun_qi_img/1473574486942944.jpg|1200*675 一开始想当然使用 UPDATE tag_group SET cover = cover + '|1200*675' WHERE id = 1; 结果报错 Data truncation: Truncated incorrect DOUBLE value: 'yun_qi_img/14735

mysql中字符串索引问题与例子

  字符串索引与数字索引有一些方面如果没做好会非常的慢了,今天我们就一起来看看小编整理的一些mysql中字符串索引问题与例子了,因为字符索引相对来说也简单文章就简单的整理了一些例子,希望对各位有帮助. 事情的起因是线上日志发现的mysql慢查询.100万数据量的标准,联合查询全部走索引的情况下,尽然要600多毫秒.很不解,但是将索引列由varchar(50)型改为bigint型后,数据提升了30倍.究其原因就索引树上搜索时要进行大量的比较操作,而字符串的比较比整数的比较耗时的多. 所以建议一般情

mysql中时间和日期函数详解(1/3)

一.MySQL 获得当前日期时间 函数 1.1 获得当前日期+时间(date + time)函数:now()  代码如下 复制代码 mysql> select now(); +–-------+ | now() | +–-------+ | 2008-08-08 22:20:46 | +–-------+ 除了 now() 函数能获得当前的日期时间外,MySQL 中还有下面的函数:  代码如下 复制代码 current_timestamp() ,current_timestamp ,localt

MySQL中字符串函数详解

字符串或串(String)是由零个或多个字符组成的有限序列.一般记为 s='a1a2•••an'(n>=0).它是编程语言中表示文本的数据类型. 通常以串的整体作为操作对象,如:在串中查找某个子串.求取一个子串.在串的某个位置上插入一个子串以及删除一个子串等.两个字符串相等的充要条件是:长度相等,并且各个对应位置上的字符都相等.设p.q是两个串,求q在p中首次出现的位置的运算叫做模式匹配.串的两种最基本的存储方式是顺序存储方式和链接存储方式. 下面我们来看看MySQL中的字符串函数 假如结果的长

PHP程序调用MYSQL中字符串加密函数方法总结

&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp;   PHP,一个嵌套的缩写名称,是英文超级文本预处理语言(PHP:Hypertext Preprocessor)的缩写.PHP 是一种 HTML 内嵌式的语言,PHP与微软的ASP颇有几分相似,都是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,现在被很多的网站编程人员广泛的运用.PHP 独特的语法混合了 C.Java.Perl 以及 PH

MySQL中字符串函数详细介绍_Mysql

符串或串(String)是由零个或多个字符组成的有限序列.一般记为 s='a1a2•••an'(n>=0).它是编程语言中表示文本的数据类型. 通常以串的整体作为操作对象,如:在串中查找某个子串.求取一个子串.在串的某个位置上插入一个子串以及删除一个子串等.两个字符串相等的充要条件是:长度相等,并且各个对应位置上的字符都相等.设p.q是两个串,求q在p中首次出现的位置的运算叫做模式匹配.串的两种最基本的存储方式是顺序存储方式和链接存储方式. 下面我们来看看MySQL中的字符串函数 假如结果的长度

PHP第八课 字符串拆分常用函数

课程概要: 通过这节课能够对字符串进行基本的操作. 字符串知识点: 1.字符串的处理介绍 2.常用的字符串输出函数 3.常用的字符串格式化函数 4.字符串比较函数 5.正则表达式在字符串中的应用 6.与per1兼用的正则表达式 1.pathinfo();//返回域名的path信息 2.parse_url(); 3.parse_str();//用来拆分参数用的 pathinfo(); <?php $str="http://blog.csdn.net/junzaivip"; $arr