MySQL常用函数

MySQL函数

1.数学函数

 SELECT ABS(-8);#绝对值
 SELECT CEILING(9.1);#大于等于我的最小的整数
 SELECT FLOOR(9.1);#小于等于我的最大的整数
 SELECT RAND();#返回0-1之间的随机数
 SELECT RAND(10);#以某个数作为种子,返回重复随机数
 SELECT ROUND(5.6,2);#保留小数位数,四舍五入
 SELECT TRUNCATE(9.552,2)#不会进行四舍五入,直接保留小数位数
 SELECT SIGN(1000);#符号函数,正数1 负数-1 0返回0
 SELECT PI();#圆周率
 SELECT SQRT(10);#平方根函数
 SELECT MOD(5,2);#取余
 SELECT CEIL(9.2);#向上取整
 SELECT POW(2,3);#幂运算
 SELECT EXP(3);#计算e的
 SELECT LOG10(10);#以10为底对数函数
 SELECT RADIANS(98);#由角度转成弧度
 SELECT DEGREES(PI());#把弧度转成角度

2.字符串函数

 SELECT CHAR_LENGTH('好好学习');#返回字符串中包含的字符数
 SELECT CONCAT('你好','啥','都是');#合并字符串
 SELECT INSERT('几艘佛破哦',2,3,'123');#替换字符串,从某个位置开始,替换某个长度
 SELECT INSERT('几艘佛破哦',10,3,'123');#如果起始位置超过字符串长度,则返回原字符串
 SELECT LOWER('IJFAFDA');#变小写
 SELECT LCASE('IJFAFDA');#变小写
 SELECT UCASE('dsjk');#变大写
 SELECT UPPER('dsjk');#变大写
 SELECT LEFT('开始就到了',3);#返回左边3个字符
 SELECT RIGHT('开始就到了',3);#返回右边边3个字符
 SELECT REPLACE('开始就到了','开','我开');#取代
 SELECT SUBSTR('开始就到了',1,3);#截取
 SELECT REVERSE('开始就到了');#取反
 SELECT ASCII('开始就到了');#返回第一个字母的ASCII码值
 SELECT CONCAT_WS('*','sfsfd','叫角度')#中间用*做分隔符
 SELECT FIND_IN_SET("c", "a,b,c,d,e");#返回在字符串s2中与s1匹配的字符串的位置
 SELECT FIELD("c", "a", "b", "c", "d", "e");#返回第一个字符串 s 在字符串列表(s1,s2...)中的位置
 SELECT FORMAT(250500.5634, 2);#进行#,###.##,保留两位小数,小数四舍五入
 SELECT LOCATE('st','myteststring'); #获取st在后面字符串中的开始位置
 SELECT LTRIM("    RUNOOB    ");#去掉前面空格
 SELECT RTRIM("    RUNOOB    ");#去掉结尾空格
 SELECT MID("RUNOOB", 2, 3);#RUNOOB 中的第 2 个位置截取 3个 字符
 SELECT POSITION('b' IN 'abc');#返回字符串 abc 中 b 的位置:
 SELECT REPEAT('数据',2);#将字符串重复2次
 SELECT LPAD('abc',10,'dd');#从‘abc’前面开始补‘dd’使其达到10的长度
 SELECT RPAD('abc',10,'dd');#从‘abc’后面开始补‘dd’使其达到10的长度
 SELECT STRCMP('abdf','ab');#比较字符串大小
 SELECT SUBSTRING_INDEX('a*b','*',1);#number是正数,返回‘*’之前的字符串
 SELECT SUBSTRING_INDEX('a*b','*',-1);#number是负数,返回‘*’之后的字符串
 SELECT SUBSTRING_INDEX(SUBSTRING_INDEX('a*b*c*d*e','*',3),'*',-1);#返回num绝对值个字符左边/右边的字符串

3.日期和时间函数

#获取当前日期
 SELECT CURRENT_DATE();
 SELECT CURDATE();
 SELECT NOW()
 SELECT LOCALTIME()
 SELECT SYSDATE()
 #分别获取日期中的某个部分
 SELECT YEAR(NOW())
 SELECT MONTH(NOW())
 SELECT DAYOFYEAR(NOW())
 SELECT HOUR((NOW()))
 SELECT MINUTE((NOW()))
 SELECT SECOND(NOW()) 
 SELECT DATE_FORMAT('2011-11-11 11:11:11','%Y-%m-%d %r')
 SELECT TIME_FORMAT(NOW(),'%h:%i:%s')
 SELECT MAKEDATE(2020,100);#2020年的一百天的日期
 SELECT DATEDIFF(NOW(),20200101180000)
 SELECT TIMESTAMPDIFF(DAY,NOW(),20200714)

4.系统信息函数

SELECT VERSION();
SELECT USER();

5.统计函数

 SELECT COUNT(studentno)FROM student#非空计数,空值不计数
 SELECT COUNT(*) FROM student;
 SELECT COUNT(1) FROM student;#所有行
 SELECT COUNT(score) FROM result;
 SELECT SUM(score)AS 总和 FROM result;#总和
 SELECT AVG(score)AS 平均分 FROM result;#平均分
 SELECT MAX(score)AS 最高分 FROM result;#最高分
 SELECT MIN(score)AS 最低分 FROM result;#最低分
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值