MySQL学习篇--函数

MySQL知识复习,下面是对学习的知识积累,以便日后复习用


MySQL数学函数分类:

字符型函数
日期和时间函数
控制流函数
系统信息函数
加密函数

数学函数:

■用来处理数值数据方面的运算,MySQL中的主要的数学函数有:绝对值函数、三角函数、对数函数、随机函数等.
使用数学函数的过程中,如果有错误发生,改函数将返回null.

select

RAND();产生一个0-1随机数
RAND(1);()中间的'1'为种子,种子相同,随机数也相同.
    例子:floor(RAND()*100)+1//0-100的随机数

字符串函数:

■主要用来处理字符串数据,MySQL字符串函数.
主要有:计算字符串长度函数,字符串合并函数,字符串转换函数,字符串比较函数,查找指定字符函数

select

CHAR_lengeh(str):计算字符个数,不区分中文,英文.
LENGTH(str):计算str字符个数,中文一般为3个字符,英文为1个字符.
INSERT(str,pos,len,newstr) :将newstr从pos开始,替换长度为len的str.
例子:insert ('你好,拜拜',4,2,'再见')."你好,拜拜"-->"你好,再见"
SUBstring(str,pos,len):从str中从pos开始取出len个字符,注意:从'1'开始计算

例子:select lineno,end_station ,
if(char_length(end_station))>5,
concat(substrin(end_station,1,5),’…’ )
from line

日期函数:

■日期和时间函数主要用来处理日期和时间的值, 一般的日期函数除了使用DATE类型的参数外,也可以使用DATETIME或TIMESTAMP类型的参数,只是忽略了这些类型值的时间部分。类似的情况还有以TIME类型为参数的函数,可以接受TIMESTAMP类型的参数,只是忽略其中的日期部分,许多日期函数可以同时接受数值和字符串类型的参数。

select

CURDATE()  //日期
CURREM_DATE  //日期
NOW()  //日期+时间
CURRENT_TIME  //时间
SYSDATE()  //时间	
DAYNAME(NOW())  //星期
DAYOFWEEK(NOW())  //星期,从星期天开始,也就是说星期天为1,星期一为2,-1与dayname相同
WEEKDAY(NOW())  //星期,与dayofweek相似,但是要+1
DATE_FORMAT(NOW(),'%Y年%m月%d日 %H点%h分%s秒')
DATE_ADD(NOW(),INTERNAL,EXPR TYPE):计算与now()相差多少天.

例子:select date_add(now(),interval -45 day)
DATEDIFF(NOW(),‘2020-4-4’):计算距离与某天的时间

系统信息函数:

■MySQL系统信息函数用于获取MySQL数据库的系统信息,这些信息主要包括:数据库的版本号、当前用户名和连接数、系统字符集以及最后一个系统生成的值等。
select
CONNECTION_ID():连接次数
DATEBASE(),SCHEMA()当前库
USER():显示用户:root@localhost,即用户名@IP地址
CHARSET(‘中国’) :返回 : utf-8
LAST_INSERT-ID():返回最后一次自动生成的ID
加密函数:
■MySQL中加密函数用来对数据进行加密和解密的处理,以保证数据表中某些重要数据不被别人窃取,这些函数能保证数据库的安全。
select
PASSWORD(‘TEST’) //可逆
MD5(‘TEST’) //不可逆
encode(‘test’,‘hello’) // test为原文 hello密匙
deencode(crypt_str,pass_str) //密文,密匙


聚合函数:

■在数据库查询过程中,不仅只返回数据的基础信息,有时还需对这些数据进行统计和汇总。MySQL 提供了聚合函数,用于实现这些高级功能。
■聚合函数用于对一组值进行计算并返回-个汇总值,使用聚合函数可以统计记录行数、计算某个字段值的总和以及这些值的最大值、最小值和平均值等。
select

SUM:计算和
AVG:计算平均值
MAX:最大值	
MIN:最小值
COUNT:统计表内的个数(不为空)

GROUP BY子句:

■使用group by子句可以将数据划分到不同的组中,实现对记录的分组查询。group by从英文字面的意义上可以理解为"根据( by ) 一定的规则进行分组( group)" ,该子句的作用是通过- -定的规则将一个数据集划分成若干个小的区域,然后针对这若干个小区域进行统计汇总。
■group by子句通常与聚合函数同时使用,如max()、min()、 count()、 sum()和avg()。
HAVING子句:
■用于完成针对分组后数据的筛选。可以用于聚合值的判断。

WITH ROLLUP

■group by子句将结果集分为若干个组,使用聚合函数可以对每个组内的数据进行信息统计,有时对各个组进行汇总计算时, 需要在分组之后再加上一条汇总记录,这个任务可以通过with rollup选项来实现。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值