常用mysql内置函数说明&对比:

以下是本人亲测的真实结果输出(navicat -- mysql -- utf-8 )

1.返回字符长度 CHAR_LENGTH(str) & LENGTH(str)

说明:

CHAR_LENGTH(str): 返回字符串字符个数(所有字符都为一个单位)

LENGTH(str):返回字符串长度(输出字符串长度,在utf-8字符集下,一个中文3字符)

举例:

--字符集:utf-8 输出结果 comments

select CHAR_LENGTH('hello world'); --5

select LENGTH('hello world'); --5

select CHAR_LENGTH('你好,世界'); --5

select LENGTH('你好,世界'); --15 mysql在utf-8字符集下,一个中文3字符

2.字符串拼接 concat & concat_ws()

说明:

concat: 如果存在null则返回null

concat_ws():直接返回,null就是空字符串,返回剩下部分

举例:

create table zivatest(

a int,

b varchar(30),

c varchar(30),

d varchar(30));

INSERT into zivatest values(1,null,'我是c和弦','');

输出结果 comments

select concat(a,b,c,d) from zivatest; --null

select concat_ws(a,b,c,d) from zivatest; --我是c和弦1 不知道为什么顺序不对

select concat_ws(b,c,d) from zivatest; --null 首字段为null,返回还是null

3.进制转换 CONV(N,from_base,to_base)

4.数值格式化 format()

第一个参数保留第二个参数的小数长度,

注意是截取,不是四舍五入,

超过还能补位0呢

输出结果 comments

select FORMAT('12.445566',4) --12.44556 截取式,不四舍五入

select FORMAT('12.445566',8) --12.44556600 不够小数位能补0喔~

5.替换/插入字符串 INSERT(str,pos,len,newstr)

输出结果 comments

select INSERT('abcdefg',2,2,'!替换你!') ; --a!替换你!defg

select INSERT('abcdefg',100,2,'!替换你!'); --abcdefg 首字符超过长度 返回原字符串

select INSERT('abcdefg',2,100,'!替换你!'); --a!替换你! 替换长度超过长度 完全替换开始字符后的所有

select INSERT('abcdefg',2,0,'!替换你!'); --a!替换你!bcdefg 替换长度为0 插入

6.返回子字符串开始位置

INSTR(str,substr)

LEFT(str,len)

RIGHT(str,len)

LOCATE(substr,str)

输出结果 comments

select LOCATE('bcd','abcdefg') --2

select INSTR('abcdefg','bcd'); --2

select INSTR('abcdefg','z'); --0 不存在返回0

select INSTR('abc defg',' '); --4 空格也能用喔~

8.变大/小写 UPPER(str) LOWER(str)

输出结果

SELECT LOWER('aaaBBBccc你好'); --aaabbbccc你好

SELECT UPPER('aaBBBccc你好'); --AABBBCCC你好

9.去除头(尾)空格 trim ltrim rtrim

输出结果

select TRIM(' aa bb cc '); --'aa bb cc'

select LTRIM(' aa bb cc '); --'aa bb cc '

select RTRIM(' aa bb cc '); --' aa bb cc'

10.重复字符串: REPEAT(str,count)

输出结果

select repeat('你好',2); --你好你好

11.REPLACE 替换 返回替换之后整个字符串

输出结果

select REPLACE('hello world','l','zz') --hezzzzo worzzd

select REPLACE('明天 你好','你','你们') --明天 你们好

12.SPACE(N)

--返回一个由n空格组成的字符串

13.substring

输出结果

SELECT SUBSTRING('abcdgfg' FROM 2 FOR 3); --bcd

SELECT SUBSTRING('abcdefg' FROM 2) --bcdefg

SELECT SUBSTRING('abcdefg',2) --bcdefg

SELECT SUBSTRING('abcdefg',2,3) --bcd

本文数据库(mysql)相关术语:navicat for mysql mysql workbench mysql数据库 mysql 存储过程 mysql安装图解 mysql教程 mysql 管理工具

主题: SQLMySQL数据UBSURIM数据库
分页:12
转载请注明
本文标题:常用mysql自带内置函数说明&相似对比 mysql mysql数据库 mysql函数 MySQL内置函 ...
本站链接:http://www.codesec.net/view/522058.html
分享请点击:


1.凡CodeSecTeam转载的文章,均出自其它媒体或其他官网介绍,目的在于传递更多的信息,并不代表本站赞同其观点和其真实性负责;
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。
登录后可拥有收藏文章、关注作者等权限...
技术大类 技术大类 | 数据库(mysql) | 评论(0) | 阅读(76)