您的位置:首页 > 数据库 > MySQL

Mysql之字符串函数

2017-02-07 18:11 330 查看
这篇博客主要是总结一下Mysql中常用的字符串函数的用法,主要有CHAR_LENGTH,FORMAT,INSERT,INSTR,LEFT/RIGHT,LENGTH,LTRIM/RTRIM/TRIM,STRCMP,CONCAT,SUBSTRING.

1.CHAR_LENGTH

返回值为字符串str的长度,长度的单位为字符

SELECT CHAR_LENGTH('vince')


2.FORMAT(X,D)

将数字x的格式写为‘#,###,###.##’,以四舍五入的

方式保留小数点后D位,并将结果以字符串的形式

返回。若D为0,则返回结果不带有小数点,或者

不含小数

select Format(12332.123456,4)


3.INSERT(str,pos,len,newstr)

返回字符串str,其子字符串起始于pos位置和

被字符串newstr取代的len字符。

如果pos超过字符串长度,则返回值为原始字符串

假如len的长度大于其它字符串的长度,则从pos位置

开始替换。若任何一个参数为null,则返回值为null

注意:替换不是插入

select insert('Quadratic',3,4,'What')


4.INSTR(str,substr)

返回字符串str中子字符串的第一个出现位置

select instr('foobarbar','bar')


5.LEFT/RIGHT

LEFT(str,len)

返回从字符串str开始的len最左字符

select left('football',5)


RIGHT(str,len)

返回从字符串str开始的len最右字符

select right('football',4)


6.LENGTH(str)

返回值为字符串str的长度,单位为字节。一个多字节字符算作多字节,这意味着对于一个包含5个2字节字符的字符串,LENGTH()的返回值为10

而CHAR_LENGTH()的返回值为5

select length('text')


7.LTRIM(str)/RTRIM(str)/TRIM(str)

LTRIM(str):返回字符串str,其引导空格字符被删除

select LTRIM(' barbar')


RTRIM(str):返回字符串str,结尾空格字符被删除

select RTRIM('barbar ')


TRIM([{BOTH|LEADING|TRAILING}[remstr]FROM]str)

返回字符串str,其中所有remstr前缀和或后缀都已被删除。若分类符BOTH、LEADING或TRAILING中没有一个时给定的,则假设为BOTH,remstr为可选项,在未指定情况下,可删除空格

(1)select trim (' bar ');`
->bar
(2)select trim(leading 'x' from 'xxxbarxxx')
->barxxx
(3)select trim(both 'x' from 'xxxbarxxx')
->bar
(4)select trim(trailing 'xyz' from 'barxxyz')
->barx


8.STRCMP(expr1,expr2)

若所有的字符串均相同,则返回0,若根据当前分类的次序,第一个参数

小于第二个,则返回-1,其他情况返回1

select strcmp('text','text2')
->返回-1
select strcmp('text2','text')
->返回1
select strcmp('text','text')
->返回0


9.CONCAT(str1,str2,….)

返回结果为连接参数产生的字符串。如果有任何一个字符为NULL,则返回值为NULL。或许有一个或者多个参数。

select concat('My','s','ql')
->Mysql
select concat('My','null','ql')
->null


10.SUBSTRING

SUBSTRING(str,pos)

SUBSTRING(STR FROM POS)

SUBSTRING(STR,POS,LEN)

SUBSTRING(STR FROM POS FOR LEN)

不带有len参数的格式从字符串str返回一个子字符串起始于位置pos。带有len参数的格式从字符串str返回一个长度同len字符相同的子字符串,起始于位置pos。使用from的格式为标准的sql语法。

(1)select substring('Quadratically',5)
->ratically
(2)select substring('footbarbar' FROM 4)
->barbar
(3)select substring('Quadratically'5,6)
->ratica
(4)select substring('Sakila',-3)
->ila
(5)select substring('Sakila',-5,3)
->aki
(6)select substring('Sakila' from -4 for 2)
->ki
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql