数据库—函数笔记
一,数据库函数的分类
-
内置函数(Built-in Functions)
数据库系统自带的函数,无需额外定义即可直接调用。-
聚合函数:对数据集进行计算(如
SUM
,AVG
,COUNT
)。 -
字符串函数:处理文本数据(如
CONCAT
,SUBSTRING
,UPPER
)。 -
日期时间函数:处理日期和时间(如
NOW()
,DATEADD
,DATEDIFF
)。 -
数学函数:执行数值运算(如
ROUND
,ABS
,SQRT
)。 -
转换函数:数据类型转换(如
CAST
,CONVERT
)。
-
-
用户自定义函数(UDF, User-Defined Functions)
由用户根据业务需求编写的函数,分为:-
标量函数(Scalar Function):返回单个值(如计算折扣价格)。
-
表值函数(Table-Valued Function):返回结果集(如返回某部门的员工列表)。
-
二,数据库函数的使用
1.聚合函数(Aggregate Functions)
-
对多行数据进行汇总计算:
SELECT COUNT(*) FROM users; -- 统计行数
SELECT AVG(salary) FROM employees; -- 计算平均值
SELECT MAX(price) FROM products; -- 获取最大值
SELECT SUM(quantity) FROM orders; -- 计算总和
2. 标量函数(Scalar Functions)
-
对单值进行操作并返回单个结果:
-
字符串函数:
SELECT UPPER('hello'); -- 转大写 → 'HELLO'
SELECT SUBSTR('database', 1, 4); -- 截取子串 → 'data'
SELECT CONCAT(first_name, ' ', last_name) AS full_name FROM users;
3. 日期函数:
SELECT NOW(); -- 当前时间 → '2023-10-05 14:30:00'
SELECT DATE_ADD(NOW(), INTERVAL 7 DAY); -- 加7天
SELECT YEAR(order_date) FROM sales; -- 提取年份
4.数学函数:
SELECT ROUND(3.1415, 2); -- 四舍五入 → 3.14
SELECT ABS(-10); -- 绝对值 → 10
SELECT RAND(); -- 生成随机数(0~1)