Amygo
作者Amygo2019-05-13 15:58
DBA, 分布式事务数据库

分布式事务数据库 —-MySQL 数据库开发规范(第四节上)

字数 2223阅读 1095评论 0赞 2

今天为大家更新第四节“函数”感兴趣的可以复习一下之前的几节。
当然,如果我的分享有帮助到你,可以继续关注我哦~有什么疑惑或者不足之处也欢迎大家在评论里指出!

4.1 字符串连接函数
MySQL 数据库中字符串连接方法,需使用 CONCAT() 或 CONCAT_ WS()函数,语法如下:
CONCAT(string1,string2,…)
CONCAT_ WS(separator,string1,string2,…)
MySQL 中的 CONCAT 和 Oracle 中的 CONCAT 不同,可以接受任意多个参数,可以较为简
单的替代’||'符号的作用。MySQL 也可以通过 sql_mode 配置双管道符作为字符串连接运算符,
但不推荐这样做。

4.2 字符串长度统计函数
LENGTH(string) #返回 string 字符串所占的字节数
CHAR_LENGTH(string) #返回 string 字符串中的字符个数
统计字符个数,就不区分是汉字还是字母或数字,也跟字符集没有关系,若统计的是字
节数,则由字符是汉字、字母或数字类型,以及字符集共同决定。

4.2.1 特别说明
我们所有的 MySQL 数据库都将会采用统一的 UTF8 编码,所以一个汉字占 3 个字节,
中文输入法(或称全角输入模式)下的字母或数字占 3 个字节;英文输入法(或半角输入法
模式)下一个字母或数字占 1 个字节。

4.3 字符串判断函数
IF(exp1,exp2,exp3):若是 exp1 为真,返回 exp2;若是 exp1 为假,返回 exp3;
IFNULL(exp1,exp2):若是 exp1 IS NOT NULL,返回 exp1,否则返回 exp2;
NULLIF(exp1,exp2):若是 exp1=exp2,返回 NULL,否则返回 exp1;

4.4 字符串替换函数
LTRIM(exp1):去掉 exp1 中字符串开头的空格;
RTRIM(exp1):去掉 exp1 中字符串结尾的空格;
TRIM(exp1):去掉 exp1 中的开头和结尾的空格;
TRIM(exp2,exp1):去除掉 exp1 中存在的字符串 exp2;

4.5 字符串查找函数
SUBSTRING_INDEX(exp1,delim,count)
exp1 为 字 符 串 , delim 为 分 割 符 号 , count 表 示 第 几 个 风 格 符 号 , 例 如 :
SUBSTRING_INDEX(‘hotpu.cn’,‘.’,1),返回:ali
SUBSTRING(exp1,pos,len)
exp1 为字符串,pos 为位置,len 为长度,例如:SUBSTRING(‘hotpu.cn’,1,5),返回:ali。
LOCAL(substr,str)
查找 substr 在 str 中的第一个位置,例如:LCOAL(hotpu.cn’,‘.’),返回:6。

4.6 字母大小写转换函数
UPPER(exp1):把字符串 exp1 转换成大写;
LOWER(exp1):把字符串 exp1 转换成小写;

4.7 数学函数
ABS(value):返回 value 的绝对值,例:ABS(-101),返回:101
FLOOR(value):去掉 value 的小数,例:FLOOR(2013.8),返回:2013
MOD(N,M):返回 N 除以 M 的余数,例:MOD(2013,10),返回:3
ROUND(value):返回 value 的四舍五入值,例:FLOOR(2013.8),返回:2014
ROUND(value,num):保留 num 位小数 value 的四舍五入值,例FLOOR(2013.867,1),返回:2013.9
RAND():返回随机数值

4.8 日期操作函数
获取当前时间函数:NOW()、CURDATE()、CURTIME()
NOW()函数精确到秒, 格式:YYYY-MM-DD HH:MM:SS
CURDATE()函数精确到天, 格式:YYYY-MM-DD
CURTIME()函数提供小时、分钟、秒, 格式:HH:MM:SS

4.8.1 特别说明
从主备数据异步复制的数据安全性角度出发,禁止使用 SYSDATE()函数获取当前时间。
日期数值的加减函数
DATE_ADD(date,INTERVAL expr type)
DATE_ SUB(date,INTERVAL expr type)
常用的几种 type 类型:YEAR、MONTH、DAY、HOUR、MINUTE,其中 expr 可以为
正数或负数,我们在开过程中,一般使用 DATE_ADD()函数,若要做日期减去一个数字的
方式,就使用负数。
MySQL 中不能像 Oracle 那样直接对时间类型进行加减运算,直接使用加减运算符不会
得到符合预期的结果,需要使用函数进行运算。
DATEDIFF(expr1,expr2),是返回 开始日期 expr1 与 结束日期 expr2 之间,相差的天
数 ,返回值为正数或负数。
返回日期某部分信息的函数
YEAR(expr1) 返回日期 expr1 部分的年份;
MONTH(expr1) 返回日期 expr1 部分的月份;
DAY(expr1)返回 expr1 部分的天数;
WEEKDAY(expr1)返回 expr1 对应的星期数字,0 表示星期一,1 表示星期二,其他依次类推;

作者:Amy—go

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

2

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

相关文章

相关问题

相关资料

X社区推广