MySQL函数有哪些
小编给大家分享一下MySQL函数有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
MySQL函数
常用函数
聚合函数
数据库级别的MD5加密
常用函数
COS(x)求余弦值(参数是弧度)SELECT COS(RADIANS(30)) --0.5ACOS(x)求反余弦值(参数是弧度)
TAN(x)求正切值(参数是弧度)SELECT TAN(RADIANS(45)) --1ATAN(x) ATAN2(x)求反正切值(参数是弧度)
COT(x)求余切值(参数是弧度)
--数学运算SELECTABS(-8)as绝对值--绝对值SELECTCEILING(9.4)--向上取整SELECTFLOOR(9.4)--向下取整SELECTRAND()--返回一个0-1之间的随机数SELECTSIGN(-10)--返回一个数的符号0返回0负数返回-1正数返回1
相关免费学习推荐:mysql视频教程
RTRIM(s)去掉字符串s结尾处的空格
TRIM(s)去掉字符串s开始和结尾处的空格
TRIM(s1 FROM s)去掉字符串s中开始处和结尾处的字符串s1SELECT TRIM(’@’ FROM ‘@@abc@@’) – abcREPEAT(s,n)将字符串s重复n次SELECT REPEAT(‘ab’,3) – abababSPACE(n)返回n个空格
REPLACE(s,s1,s2)将字符串s2替代字符串s中的字符串s1SELECT REPLACE(‘abc’,‘a’,‘x’) --xbcSTRCMP(s1,s2)比较字符串s1和s2
SUBSTRING(s,n,len)获取从字符串s中的第n个位置开始长度为len的字符串
MID(s,n,len)同SUBSTRING(s,n,len)
LOCATE(s1,s),POSITION(s1 IN s)从字符串s中获取s1的开始位置SELECT LOCATE(‘b’, ‘abc’) – 2INSTR(s,s1)从字符串s中获取s1的开始位置SELECT INSTR(‘abc’,‘b’) – 2REVERSE(s)将字符串s的顺序反过来SELECT REVERSE(‘abc’) – cbaELT(n,s1,s2,…)返回第n个字符串SELECT ELT(2,‘a’,‘b’,‘c’) – bFIELD(s,s1,s2…)返回第一个与字符串s匹配的字符串位置SELECT FIELD(‘c’,‘a’,‘b’,‘c’) – 3FIND_IN_SET(s1,s2)返回在字符串s2中与s1匹配的字符串的位置
--字符串函数SELECTCHAR_LENGTH('我们的征途是星辰和大海')--字符串的长度SELECTCONCAT('我','爱','猫猫')--拼接字符串SELECTINSERT('我爱编程helloworld',1,2,'超级热爱')--查询,从某个位置开始替换某个长度SELECTLOWER('MaoMao')--小写字母SELECTUPPER('maomao')--全变大写SELECTINSTR('maonmao','n')--返回第一次出现的子串的索引SELECTREPLACE('猫猫说坚持就能成功','坚持','努力')--替换出现的指定字符串SELECTSUBSTR('猫猫说坚持就能成功',4,3)--返回指定的子字符串(源字符串,截取的位置,截取的长度)SELECTREVERSE('猫猫说坚持就能成功')--反转--查询有田的同学,将田改成猪SELECTREPLACE(studentname,'田','猪')FROMstudentWHEREstudentnameLIKE'%田'函数 作用 例子 CURDATE();CURRENT_DATE()返回当前日期SELECT CURDATE()–> 2021-01-09NOW()返回当前日期和时间SELECT NOW()–> 2021-01-09 10:03:14LOCALTIME()返回当前日期和时间SELECT LOCALTIME()–> 2021-01-09 10:03:14UNIX_TIMESTAMP()以UNIX时间戳的形式返回当前时间SELECT UNIX_TIMESTAMP()->1617977084
--时间和日期函数(记住)SELECTCURRENT_DATE()--获取当前日期SELECTCURDATE()--获取当前日期SELECTNOW()--获取当前的时间SELECTLOCALTIME()--本地时间SELECTYEAR(NOW())SELECTMONTH(NOW())SELECTDAY(NOW())SELECTHOUR(NOW())SELECTMINUTE(NOW())SELECTSECOND(NOW())--系统SELECTSYSTEM_USER()SELECTUSER()SELECTVERSION()
聚合函数
--================聚合函数============--都能够统计表中的数据(想查询一个表中有多少个记录,就是用这个count())SELECTCOUNT(studentname)FROMstudent;--COUNT(指定列),会忽略所有的null值SELECTCOUNT(borndate)FROMstudent;--结果8少一个因为是nullSELECTCOUNT(*)FROMstudent;--Count(*)不会忽略所有的null值本质计算行数SELECTCOUNT(1)FROMresult;--Count(1)不会忽略所有的null值本质计算行数SELECTSUM(studentresult)AS总和FROMresultSELECTAVG(studentresult)AS平均分FROMresultSELECTMAX(studentresult)AS最高分FROMresultSELECTMIN(studentresult)AS最低分FROMresult--查询不同课程的平均分,最高分,最低分--核心:根据不同的课程分组SELECTany_value(`subjectname`)AS科目名,AVG(studentresult)AS平均分,MAX(studentresult)AS最高分,MIN(studentresult)AS最低分FROMresultrINNERJOIN`subject`subONr.`subjectno`=sub.`subjectno`GROUPBYr.subjectno--通过什么字段来分组--查询不同课程的平均分,最高分,最低分,平均分大于80SELECTany_value(`subjectname`)AS科目名,AVG(studentresult)AS平均分,MAX(studentresult)AS最高分,MIN(studentresult)AS最低分FROMresultrINNERJOIN`subject`subONr.`subjectno`=sub.`subjectno`GROUPBYr.subjectno--通过什么字段来分组HAVING平均分>50
数据库级别的MD5加密
什么是MD5
主要增强算法复杂度和不可逆性
MD5 不可逆,具体值的md5是一样的
MD5 破解网站的原理,背后有一个字典,MD5加密后的值:MD5加密前的值
--====================测试MD5加密===================CREATETABLE`testmd5`(`id`INT(4)NOTNULL,`name`VARCHAR(20)NOTNULL,`pwd`VARCHAR(50)NOTNULL,PRIMARYKEY(`id`))ENGINE=INNODBDEFAULTCHARSET=utf8--明文密码INSERTINTOtestmd5VALUES(1,'zhangsan','123456'),(2,'lisi','123456'),(3,'wangwu','123456')--加密UPDATEtestmd5SETpwd=MD5(pwd)WHEREid=1UPDATEtestmd5SETpwd=MD5(pwd)--加密全部的密码--插入的时候加密INSERTINTOtestmd5VALUES(4,'xiaoming',MD5('123456'))--如何校验:将用户传递进来的密码,进行md5加密,然后比对加密后的值SELECT*FROMtestmd5WHERE`name`='xiaoming'ANDpwd=MD5('123456')
以上是“MySQL函数有哪些”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。