1.数学函数
数学函数用于执行一些比较复杂的算术操作。MySQL支持很多的数学函数。若发生错误,所有的数学函数都会返回NULL。
(1)greatest()和least()函数
是数学函数中经常使用的函数,它们的功能是获得一组数中的最大值和最小值。例如:SELECTGREATEST(10,9,128,1),LEAST(1,2,3);
数学函数还可以嵌套使用,例如:
SELECT GREATEST(-2,LEAST(0,3)),LEAST(1,GREATEST(1,2));
注意:MySQL不允许函数名和括号之间有空格。
(2)FLOOR()和CEILING()函数
floor()用于获得小于一个数的最大整数值,ceiling()函数用于获得大于一个数的最小整数值,例如:
SELECT FLOOR(-1.2), CEILING(-1.2),FLOOR(9.9), CEILING(9.9);
结果为:-2,-1,9,10;
(3)ROUND()和TRUNCATE()函数
round()函数用于获得一个数的四舍五入的整数值:
SELECTROUND(5.1),ROUND(25.501),ROUND(9.8);
结果为:5,26,10;
truncate()函数用于把一个数字截取为一个指定小数个数的数字,逗号后面的数字表示指定小数的个数:
SELECT TRUNCATE(1.54578, 2),TRUNCATE(-76.12, 5);
结果为:1.54,-76.12000;
(4)ABS()函数:用来获得一个数的绝对值
(5)sign()函数
返回数字的符号,返回的结果是正数(1)、负数(-1)或者零(0):
SELECT SIGN(-2),SIGN(2),SIGN(0);
结果为:-1,1,0;
(6)sqrt()函数返回一个数的平方根
(7)POW()函数
pow()函数以一个数作为另外一个数的指数,并返回结果:
SELECTPOW(2,2),POW(10, -2),POW(0,3);
结果为:4,0.01,0;
(8)SIN()、COS()、TAN()、ASIN()、ACOS()和ATAN()函数
分别返回一个角度(弧度)的正弦、余弦、正切、反正弦、反余弦和反正切值
如果使用的是角度而不是弧度,可以使用degrees()和radians ()函数进行转换。
(9)BIN()、OTC()和HEX()函数
BIN()、OTC()和HEX()函数分别返回一个数的二进制、八进制和十六进制值,这个值作为字符串返回;
2.聚合函数
MySQL有一组函数是特意为求和或者对表中的数据进行集中概括而设计的。这一组函数就叫做聚合函数。聚合函数常常用于对一组值进行计算,然后返回单个值。通过把聚合函数(如COUNT和SUM)添加到带有一个GROUPBY子句的SELECT语句块中,数据就可以聚合。聚合意味着是求一个和、平均、频次及子和,而不是单个的值。
3. 字符串函数
因为MySQL数据库不仅包含数字数据,还包含字符串,因此MySQL有一套为字符串操作而设计的函数。在字符串函数中,包含的字符串必须要用单引号括起。
(1)ASCII()函数
语法格式: ASCII (char)
返回字符表达式最左端字符的ASCII值。参数char的类型为字符型的表达式,返回值为整型。
例: 返回字母A的ASCII码值。SELECTASCII('A'); 结果为:65
(2)CHAR()函数
语法格式: CHAR (x1,x2,x3,…)
将x1、x2……的ASCII码转换为字符,结果组合成一个字符串。参数x1,x2,x3……为介于0~255之间的整数,返回值为字符型。
例: 返回ASCII码值为65、66、67的字符,组成一个字符串。
SELECTCHAR(65,66,67); 结果为:ABC
(3)LEFT和RIGHT函数
语法格式: left | right ( str ,x )
分别返回从字符串str左边和右边开始指定x个字符。
例: SELECT LEFT(课程是什么, 2)
执行结果为:课程;
(4)TRIM、LTRIM 和RTRIM函数(删除)
语法格式: trim | ltrim |rtrim(str)
使用LTRIM和RTRIM分别删除字符串中首(左边)空格和尾(右边)空格,返回值为字符串。参数str为字符型表达式,返回值类型为varchar。TRIM删除字符串首部和尾部的所有空格。
(5)RPAD和LPAD函数(填补)
语法格式: rpad |lpad( str, n, pad)
使用RPAD和LPAD分别用字符串
数学函数用于执行一些比较复杂的算术操作。MySQL支持很多的数学函数。若发生错误,所有的数学函数都会返回NULL。
(1)greatest()和least()函数
是数学函数中经常使用的函数,它们的功能是获得一组数中的最大值和最小值。例如:SELECTGREATEST(10,9,128,1),LEAST(1,2,3);
数学函数还可以嵌套使用,例如:
SELECT GREATEST(-2,LEAST(0,3)),LEAST(1,GREATEST(1,2));
注意:MySQL不允许函数名和括号之间有空格。
(2)FLOOR()和CEILING()函数
floor()用于获得小于一个数的最大整数值,ceiling()函数用于获得大于一个数的最小整数值,例如:
SELECT FLOOR(-1.2), CEILING(-1.2),FLOOR(9.9), CEILING(9.9);
结果为:-2,-1,9,10;
(3)ROUND()和TRUNCATE()函数
round()函数用于获得一个数的四舍五入的整数值:
SELECTROUND(5.1),ROUND(25.501),ROUND(9.8);
结果为:5,26,10;
truncate()函数用于把一个数字截取为一个指定小数个数的数字,逗号后面的数字表示指定小数的个数:
SELECT TRUNCATE(1.54578, 2),TRUNCATE(-76.12, 5);
结果为:1.54,-76.12000;
(4)ABS()函数:用来获得一个数的绝对值
(5)sign()函数
返回数字的符号,返回的结果是正数(1)、负数(-1)或者零(0):
SELECT SIGN(-2),SIGN(2),SIGN(0);
结果为:-1,1,0;
(6)sqrt()函数返回一个数的平方根
(7)POW()函数
pow()函数以一个数作为另外一个数的指数,并返回结果:
SELECTPOW(2,2),POW(10, -2),POW(0,3);
结果为:4,0.01,0;
(8)SIN()、COS()、TAN()、ASIN()、ACOS()和ATAN()函数
分别返回一个角度(弧度)的正弦、余弦、正切、反正弦、反余弦和反正切值
如果使用的是角度而不是弧度,可以使用degrees()和radians ()函数进行转换。
(9)BIN()、OTC()和HEX()函数
BIN()、OTC()和HEX()函数分别返回一个数的二进制、八进制和十六进制值,这个值作为字符串返回;
2.聚合函数
MySQL有一组函数是特意为求和或者对表中的数据进行集中概括而设计的。这一组函数就叫做聚合函数。聚合函数常常用于对一组值进行计算,然后返回单个值。通过把聚合函数(如COUNT和SUM)添加到带有一个GROUPBY子句的SELECT语句块中,数据就可以聚合。聚合意味着是求一个和、平均、频次及子和,而不是单个的值。
3. 字符串函数
因为MySQL数据库不仅包含数字数据,还包含字符串,因此MySQL有一套为字符串操作而设计的函数。在字符串函数中,包含的字符串必须要用单引号括起。
(1)ASCII()函数
语法格式: ASCII (char)
返回字符表达式最左端字符的ASCII值。参数char的类型为字符型的表达式,返回值为整型。
例: 返回字母A的ASCII码值。SELECTASCII('A'); 结果为:65
(2)CHAR()函数
语法格式: CHAR (x1,x2,x3,…)
将x1、x2……的ASCII码转换为字符,结果组合成一个字符串。参数x1,x2,x3……为介于0~255之间的整数,返回值为字符型。
例: 返回ASCII码值为65、66、67的字符,组成一个字符串。
SELECTCHAR(65,66,67); 结果为:ABC
(3)LEFT和RIGHT函数
语法格式: left | right ( str ,x )
分别返回从字符串str左边和右边开始指定x个字符。
例: SELECT LEFT(课程是什么, 2)
执行结果为:课程;
(4)TRIM、LTRIM 和RTRIM函数(删除)
语法格式: trim | ltrim |rtrim(str)
使用LTRIM和RTRIM分别删除字符串中首(左边)空格和尾(右边)空格,返回值为字符串。参数str为字符型表达式,返回值类型为varchar。TRIM删除字符串首部和尾部的所有空格。
(5)RPAD和LPAD函数(填补)
语法格式: rpad |lpad( str, n, pad)
使用RPAD和LPAD分别用字符串