SQL学习(4)——MySQL数据库常用的函数--常见的字符串函数
2017-06-02 17:00
585 查看
四、常见的字符串函数
<1>LENGTH(str):
求字符串长度(以字节为单位),返回字符串str的字节长度。
注:在GBK编码中,一个中文字符为2个字节。UTF-8编码中,一个中文字符为3个字节,一个英文字符为1个字节。
例:
<2>CHAR_LENGTH(str):
获取字符串的长度,单位为字符。
例:
<3>FORMAT(X,D):
以四舍五入的方式保留X小数点的后D位,返回结果以字符串的形式。
注:若D为0,则返回结果不包含小数部分。
例:
<4>INSERT(str,pos,len,newstr):
从原str的pos位置开始,用字符串newstr来替换,替换长度为len。
例:
下面我们来看一个有意思的情况
这个返回结果会是什么呢?按照我们的想法应该是:study
而真正的结果如下:
总结:若pos的值>(strlength+1),此时返回str,若pos=strlength,则返回str+newstr。若len超过可替换的长度,则从位置pos加上newstr。若四个参数中有一个null,则返回null。
<5>INSTR(str,substr):
返回字符串str中首次出现子字符串substr的位置。
例:
<6>LEFT/RIGHT:字符串截取
LEFT(str,len):左截取,返回字符串str中从左边开始,前len个字符。
RIGTH(str,len):右截取,返回字符串str中从右边开始,前len个字符。
例:
<7>强大的TRIM()函数。
(1)、LTRIM(str):去掉左边的空格。
(2)、RTRIM(str):去掉右边的空格。
(3)、TRIM(str): 将字串首尾两端的空格移除,作用等于RTRIM和LTRIM两个函数共同的结果。
(4)、ALLTRIM(str):将字串左右边两边的空格移除。
(5)、trim函数去除指定的开头字符
(6)、trim函数去除指定的结尾字符
(7)、trim函数去除指定的首部和尾部字符
(8)、默认情况下,trim函数会去除首部和尾部,被指定的字符
(9)、如果没有指定被移除的字符,则会默认去除首部和尾部的空格
<8>、STRCMP(expr1,expr2):判断字符串是否相等
若相等返回0,若expr1 < expr2返回-1,其余情况返回1。
注:此处字符串的大小根据ANSI编码来比较。
<9>、concat:字符串拼接
CONCAT(str1,str2,…):返回结果为将str1,str2…拼接之后产生的字符串。若任何一个为null,则返回null。
<1>LENGTH(str):
求字符串长度(以字节为单位),返回字符串str的字节长度。
注:在GBK编码中,一个中文字符为2个字节。UTF-8编码中,一个中文字符为3个字节,一个英文字符为1个字节。
例:
*SELECT LENGTH('玩s')* 返回结果为4。
<2>CHAR_LENGTH(str):
获取字符串的长度,单位为字符。
例:
*SELECT CHAR_LENGTH('玩s')* 返回结果为2。
<3>FORMAT(X,D):
以四舍五入的方式保留X小数点的后D位,返回结果以字符串的形式。
注:若D为0,则返回结果不包含小数部分。
例:
*SELECT FORMAT(20.45684,3)* 返回结果:20.457
*SELECT FORMAT(20.45684,0)* 返回结果:20
<4>INSERT(str,pos,len,newstr):
从原str的pos位置开始,用字符串newstr来替换,替换长度为len。
例:
*SELECT INSERT('study',1,5,'learn');* 返回结果:learn
*SELECT INSERT('study',5,1,'learn');* 返回结果:studlearn
下面我们来看一个有意思的情况
*SELECT INSERT('study',6,1,'learn');*
这个返回结果会是什么呢?按照我们的想法应该是:study
而真正的结果如下:
总结:若pos的值>(strlength+1),此时返回str,若pos=strlength,则返回str+newstr。若len超过可替换的长度,则从位置pos加上newstr。若四个参数中有一个null,则返回null。
<5>INSTR(str,substr):
返回字符串str中首次出现子字符串substr的位置。
例:
*SELECT INSTR('learning','ing');* 返回结果:6
<6>LEFT/RIGHT:字符串截取
LEFT(str,len):左截取,返回字符串str中从左边开始,前len个字符。
RIGTH(str,len):右截取,返回字符串str中从右边开始,前len个字符。
例:
*SELECT LEFT('study',3)* 返回结果:stu
<7>强大的TRIM()函数。
(1)、LTRIM(str):去掉左边的空格。
*SELECT LTRIM(' study')* 返回结果:study
(2)、RTRIM(str):去掉右边的空格。
*SELECT RTRIM('study ')* 返回结果:study
(3)、TRIM(str): 将字串首尾两端的空格移除,作用等于RTRIM和LTRIM两个函数共同的结果。
SELECT trim(' study ') 返回结果:study
(4)、ALLTRIM(str):将字串左右边两边的空格移除。
(5)、trim函数去除指定的开头字符
select trim(leading 'x' from 'xstudy') 返回结果:study
(6)、trim函数去除指定的结尾字符
select trim(trailing 'o' from 'studyo') 返回结果:study
(7)、trim函数去除指定的首部和尾部字符
select trim(both 'o' from 'ostudyo') 返回结果:study
(8)、默认情况下,trim函数会去除首部和尾部,被指定的字符
select trim('o from 'ostudyo') 返回结果:study
(9)、如果没有指定被移除的字符,则会默认去除首部和尾部的空格
select trim(' study ') 返回结果:study
<8>、STRCMP(expr1,expr2):判断字符串是否相等
若相等返回0,若expr1 < expr2返回-1,其余情况返回1。
注:此处字符串的大小根据ANSI编码来比较。
SELECT STRCMP(30,30) 返回结果:0
<9>、concat:字符串拼接
CONCAT(str1,str2,…):返回结果为将str1,str2…拼接之后产生的字符串。若任何一个为null,则返回null。
SELECT CONCAT('I','like','learning') 返回结果:Ilikelearning
相关文章推荐
- php学习笔记(10):MYSQL数据库中的常用SQL语句
- Python学习笔记——一些常用函数、常见错误总结
- PL/SQL学习笔记[3]-常用函数
- 【数据库学习笔记】Oracle_02_序列,分页,常用函数,jdbc,PL/SQL
- SQL的学习三--常用的函数
- Mysql数据库_DML_常用函数.sql
- sql中常用不常见函数部分总结
- 《Excel 2010 SQL完全应用》学习笔记之一:SQL常见函数的使用(续)
- PL/SQL学习笔记-常用函数
- MYSQL数据库学习十三 使用MySQL常用函数
- SQLserver学习day05 T-SQL数据操作(查询) 常用的函数
- linux学习第五十篇:MySQL创建用户以及授权,常用sql语句,MySQL数据库备份恢复
- Mysql学习笔记八,Mysql优化篇,常用sql技巧和常见问题
- 《Excel 2010 SQL完全应用》学习笔记之一:SQL常见函数的使用
- oracle 字符串函数、数学函数、日期函数、其他函数、sql的执行过程 ORACLE 常用函数
- SQL查询时常用,但不熟悉的相关语句-----邮标,行号,临时表,类型转换,字符串函数,sql 判断语句,检查是不是数字,变量,sql split 函数
- sql常用格式化函数及字符串函数
- PL/SQL学习笔记-常用函数
- DB2常用SQL技巧及函数