SQL函数是用于在数据库中执行某些操作或计算的数据库对象,其中包括统计函数、字符串函数、日期时间函数、数值函数等。通过函数的使用,可以简化查询中的代码和处理数据的方法。
一、统计函数
统计函数用于计算数据库中数据的总数、平均值、最大值或最小值等,其中包含 SUM、AVG、MAX、MIN、COUNT等常用函数。
1、SUM函数
SUM函数用于计算指定列中所有数值的总和。
SELECT SUM(column_name) FROM table_name;
例如:
SELECT SUM(price) FROM books;
2、AVG函数
AVG函数用于计算指定列中所有数值的平均值。
SELECT AVG(column_name) FROM table_name;
例如:
SELECT AVG(price) FROM books;
3、MAX函数
MAX函数用于计算指定列中所有数值的最大值。
SELECT MAX(column_name) FROM table_name;
例如:
SELECT MAX(price) FROM books;
4、MIN函数
MIN函数用于计算指定列中所有数值的最小值。
SELECT MIN(column_name) FROM table_name;
例如:
SELECT MIN(price) FROM books;
5、COUNT函数
COUNT函数用于计算指定列中数据行的个数。
SELECT COUNT(column_name) FROM table_name;
例如:
SELECT COUNT(*) FROM books;
二、字符串函数
字符串函数用于处理数据库中的字符串数据,其中包含 CONCAT、LENGTH、TRIM、SUBSTRING等常用函数。
1、CONCAT函数
CONCAT函数用于将两个或多个字符串进行组合。
SELECT CONCAT(column1, column2) FROM table_name;
例如:
SELECT CONCAT(last_name, ', ', first_name) AS full_name FROM employees;
2、LENGTH函数
LENGTH函数用于计算字符串的长度。
SELECT LENGTH(column_name) FROM table_name;
例如:
SELECT LENGTH(last_name) FROM employees;
3、TRIM函数
TRIM函数用于删除字符串前后的空格或指定字符。
SELECT TRIM('x' FROM column_name) FROM table_name;
例如:
SELECT TRIM(' ' FROM last_name) FROM employees;
4、SUBSTRING函数
SUBSTRING函数用于截取字符串的一部分。
SELECT SUBSTRING(column_name, start, length) FROM table_name;
例如:
SELECT SUBSTRING(last_name, 1, 3) FROM employees;
三、日期时间函数
日期时间函数用于处理数据库中的日期和时间数据,其中包含 DATE、YEAR、MONTH、DAY等常用函数。
1、DATE函数
DATE函数用于将一个日期时间字符串转换为日期格式。
SELECT DATE(column_name) FROM table_name;
例如:
SELECT DATE('2022-10-01 12:00:00') FROM orders;
2、YEAR函数
YEAR函数用于从日期中提取年份。
SELECT YEAR(column_name) FROM table_name;
例如:
SELECT YEAR(order_date) FROM orders;
3、MONTH函数
MONTH函数用于从日期中提取月份。
SELECT MONTH(column_name) FROM table_name;
例如:
SELECT MONTH(order_date) FROM orders;
4、DAY函数
DAY函数用于从日期中提取天数。
SELECT DAY(column_name) FROM table_name;
例如:
SELECT DAY(order_date) FROM orders;
四、数值函数
数值函数用于处理数据库中的数值数据,其中包含 ABS、ROUND、CEIL、FLOOR等常用函数。
1、ABS函数
ABS函数用于计算一个数值的绝对值。
SELECT ABS(column_name) FROM table_name;
例如:
SELECT ABS(price) FROM books;
2、ROUND函数
ROUND函数用于将一个数值保留指定的小数位数。
SELECT ROUND(column_name, digits) FROM table_name;
例如:
SELECT ROUND(price, 2) FROM books;
3、CEIL函数
CEIL函数用于将一个数值向上取整。
SELECT CEIL(column_name) FROM table_name;
例如:
SELECT CEIL(price) FROM books;
4、FLOOR函数
FLOOR函数用于将一个数值向下取整。
SELECT FLOOR(column_name) FROM table_name;
例如:
SELECT FLOOR(price) FROM books;