持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第7天,点击查看活动详情
大家好! 我是慕歌,一只想教你学习 后端技术的野生coder! 欢迎来到慕歌的数据库系列教程,希望通过这个教程带大家深入学习数据库技术,该教程所有知识点均来源于本人的日常学习与开发中,如有疑问请与我联系!
前言
在上一节 的分享中,慕歌向大家分享了关于数据库多变查询的知识,多表查询是在数据整合阶段非常必要的功能。很多时候我们需要将多个表的数据进行联合分析,才能看出数据的关联变化,这也是MYSQL 不同于其他数据库的地方,MYSQL数据库本身就带有数据关联性,所以被称为关联性数据库。而在多表查询我们需要把握基本的关联查询,并分析之间的关联关系,才能拿出我们所需要的数据。而集合查询,则是对多表的一种充,用于实现那些简单的多表查询所不能实现的功能,需要注意保证连接字段必须一致,否则无法建立正确的连接。
那么这一节中,慕歌想向大家分享的是关于对数据分析的函数知识,通过使用函数做一些简单的分析,简化分析的过程,这是在数据库使用中非常必要的功能。
单行函数
数值函数
数值函数,更多的是针对数值进行的数学运算,这方面我们就比较的熟悉。例如常用的数学函数:ABS(),PI(),LEAST(),RAND(),SQRT()等
#数学函数语法
SELECT ABS(N) FROM DUAL;
#在函数中添加,需要运算的数值,当多个常数时,顺序填入
#示例:
SELECT ABS(-123),ABS(32),SIGN(-23),SIGN(43),PI(),CEIL(32.32),CEILING(-43.23),FLOOR(32.32),
FLOOR(-43.23),MOD(12,5)
FROM DUAL;
三角函数
三角函数主要用于进行几何的运算,其中包含求值函数,以及转换函数
#弧度,角度转换
RADIANS() 角度转弧度
DEGREES() 弧度转角度
#三角函数
SIN(X),COS(X),TAN() 等常用的三角函数
#示例:
SELECT SIN(RADIANS(30)),DEGREES(ASIN(1)),TAN(RADIANS(45)),DEGREES(ATAN(1)),DEGREES(ATAN2(1,1))
FROM DUAL;
#这里可以将两个函数进行组合使用,就能够计算弧度值的三角函数
指数与对数
这里MYSQL函数为我们提供了一些常用的对数指数函数方便使用
#指数函数
POW(X,Y) x的y次方,EXP(X) 以e为底的x次方,LOG(X) e 为底的对数,LOG10(X) 10为底的X 的对数,LOG2(X) 2为底的X的对数
#示例:
SELECT POW(2,5),EXP(2),LON(10),LOG10(10),LOG2(4)
FROM DUAL;
字符函数
字符函数就用于对字符串的处理,与Java中的字符串相似,MYSQL 也支持了一系列对于字符的特殊处理
#字符串
ASCII(S) 返回ascill 的值,LENGTH(S) 返回字符的长度,UPPER(S) 字符全部大写, REVERSE(s) 字符反转能函数
#示例:
SELECT LENGTH('asdfasfasxsd') FROM DUAL;
#返回字符的长度
日期函数
日期的记录是数据库记录数据的重要指标,想要做到数据的合理管理,需要对所有数据 的操作时间进行记录,做到有迹可循
#日期函数
CURDATE() 返回当前日期,CURTIME() 返回当前时间, NOW() 当前系统的是详细时间
#示例:
SELECT CURDATE(),CURTIME(),NOW()
FROM DUAL;
通过该命令获取当前时间
#时间戳
UNIX_TIMESTEMP() 当前时间的时间戳,FROM_UNIXTIME(timestamp) 将时间戳转换为时间类型
#时间戳是一个从标准时间至今的数值时间,具有唯一性
#广泛用于某些特殊规则的时候,充当唯一自增变量
#示例:
SELECT UNIX_TIMESTAMP(CURDATE());
时间戳当前时间
#日期解析
DATE——FROMAT(date,frm) 以某种格式解析日期,STR_TO_DATE(str,frm) 按照日期格式解析字符串为日期
结语
终于达成了在掘金的5000阅读,感谢大家的支持与帮助,慕歌将以更优质的知识分享回馈大家。
这一节的分享到这里就结束了,下一节中将来单行数据处理函数的分享学习!
如果您觉得本文不错,欢迎点赞支持,您的关注是我坚持的动力!