海口手机版网站建设/百度软文
以下是一份按照常见MySQL数据库函数,并且包含函数示例:
字符串函数
字符串函数用于处理和操作文本数据。
- CONCAT:将多个字符串连接为一个字符串。
- SUBSTRING:提取字符串的一部分。
- LENGTH:返回字符串的长度。
- REPLACE:替换字符串中的子串。
- LOWER/UPPER:将字符串转换为小写/大写。
示例:
SELECT CONCAT('Hello', ' ', 'World') AS Result;
-- 输出结果为 "Hello World"SELECT SUBSTRING('MySQL', 2, 3) AS Result;
-- 输出结果为 "ySQ"SELECT LENGTH('Hello World') AS Result;
-- 输出结果为 11SELECT REPLACE('Hello World', 'World', 'Universe') AS Result;
-- 输出结果为 "Hello Universe"SELECT LOWER('Hello') AS Result;
-- 输出结果为 "hello"SELECT UPPER('World') AS Result;
-- 输出结果为 "WORLD"
数值函数
数值函数用于对数字数据进行处理和计算。
- ABS:返回一个数的绝对值。
- ROUND:将一个数四舍五入到指定的小数位数。
- CEILING/FLOOR:将一个数向上取整/向下取整。
- RAND:生成一个随机数。
示例:
SELECT ABS(-10) AS Result;
-- 输出结果为 10SELECT ROUND(3.14159, 2) AS Result;
-- 输出结果为 3.14SELECT CEILING(4.8) AS Result;
-- 输出结果为 5SELECT FLOOR(4.8) AS Result;
-- 输出结果为 4SELECT RAND() AS Result;
-- 输出结果为一个随机数
日期和时间函数
日期和时间函数用于处理和操作日期和时间数据。
- NOW:返回当前日期和时间。
- DATE_FORMAT:将日期和时间格式化为指定的格式。
- DATE_ADD/DATE_SUB:在日期上添加或减去指定的时间间隔。
- DATEDIFF:计算两个日期之间的天数差。
示例:
SELECT NOW() AS Result;
-- 输出当前日期和时间SELECT DATE_FORMAT(NOW(), '%Y-%m-%d') AS Result;
-- 输出当前日期的年、月、日SELECT DATE_ADD(NOW(), INTERVAL 1 DAY) AS Result;
-- 输出明天的日期SELECT DATEDIFF('2023-05-19', '2023-05-15') AS Result;
-- 输出日期之间的天数差
聚合函数
聚合函数用于对数据进行聚合计算。
- AVG:计算平均值。
- SUM:计算总和。
- COUNT:计算行数或非NULL值的数量。
- MAX:找出最大值。
- MIN:找出最小值。
示例:
SELECT AVG(salary) AS AverageSalary FROM employees;
-- 计算员工薪资的平均值SELECT SUM(quantity) AS TotalQuantity FROM orders;
-- 计算订单数量的总和SELECT COUNT(*) AS TotalRows FROM customers;
-- 计算顾客表SELECT MAX(price) AS MaxPrice FROM products;
-- 找出产品价格的最大值SELECT MIN(quantity) AS MinQuantity FROM inventory;
-- 找出库存数量的最小值
条件函数
条件函数根据满足特定条件的值进行计算或返回结果。
- IF:根据条件返回不同的值。
- CASE:根据条件进行多路分支判断。
示例:
SELECT IF(score >= 60, 'Pass', 'Fail') AS Result FROM exams;
-- 如果分数大于等于60,则返回"Pass",否则返回"Fail"SELECT CASEWHEN age < 18 THEN 'Minor'WHEN age >= 18 AND age < 65 THEN 'Adult'ELSE 'Senior'END AS AgeGroup FROM persons;
-- 根据年龄划分为不同的年龄组
空值处理函数
空值处理函数用于处理和判断空值(NULL)。
- ISNULL:检查一个值是否为NULL。
- COALESCE:返回第一个非NULL的值。
- NULLIF:如果两个值相等,则返回NULL,否则返回第一个值。
示例:
SELECT ISNULL(name, 'Unknown') AS Name FROM users;
-- 如果姓名为NULL,则返回"Unknown"SELECT COALESCE(city, country, 'N/A') AS Location FROM addresses;
-- 返回第一个非NULL的城市或国家,如果都为NULL,则返回"N/A"SELECT NULLIF(score, 0) AS Result FROM exams;
-- 如果分数为0,则返回NULL