目录
1. 函数的理解
函数在计算机语言的使用中贯穿始终,函数的作用是什么呢?它可以把我们经常使用的代码封装起来,需要的时候直接调用即可。这样既 提高了代码效率 ,又 提高了可维护性 。在 SQL 中我们也可以使用函数对检索出来的数据进行函数操作。使用这些函数,可以极大地 提高用户对数据库的管理效率 。![]()
![]()
单行函数
- 操作数据对象
- 接受参数返回一个结果
- 只对一行进行变换
- 每行返回一个结果
- 可以嵌套
- 参数可以是一列或一个值
2. 数值函数
2.1 基本函数
2.2 角度与弧度互换函数
2.3 三角函数
2.4 指数与对数
2.5 进制间的转换
#1.数值函数
#基本的操作
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),
12 MOD 5,
12 % 5
FROM DUAL;
#取随机数
SELECT RAND(), RAND(), RAND(10), RAND(10), RAND(-1), RAND(-1)
FROM DUAL;
#四舍五入,截断操作
SELECT ROUND(123.556),
ROUND(123.456, 0),
ROUND(123.456, 1),
ROUND(123.456, 2),
ROUND(123.456, -1),
ROUND(153.456, -2)
FROM DUAL;
SELECT TRUNCATE(123.456, 0), TRUNCATE(123.496, 1), TRUNCATE(129.45, -1)
FROM DUAL;
#单行函数可以嵌套
SELECT TRUNCATE(ROUND(123.456, 2), 0)
FROM DUAL;
#角度与弧度的互换
SELECT RADIANS(30),
RADIANS(45),
RADIANS(60),
RADIANS(90),
DEGREES(2 * PI()),
DEGREES(RADIANS(60))
FROM DUAL;
#三角函数
SELECT SIN(RADIANS(30)), DEGREES(ASIN(1)), TAN(RADIANS(45)), DEGREES(ATAN(1))
FROM DUAL;
#指数和对数
SELECT POW(2, 5), POWER(2, 4), EXP(2)
FROM DUAL;
SELECT LN(EXP(2)), LOG(EXP(2)), LOG10(10), LOG2(4)
FROM DUAL;
#进制间的转换
SELECT BIN(10), HEX(10), OCT(10), CONV(10, 10, 8)
FROM DUAL;
3. 字符串函数
注意:MySQL中,字符串的位置是从1开始的。