MYSQL中常见的函数和使用

发布于:2025-06-06 ⋅ 阅读:(25) ⋅ 点赞:(0)

字符串函数

  • CONCAT(str1,str2,...,strN) :用于将多个字符串连接成一个字符串。例如,SELECT CONCAT('SQL', ' ', '函数') ,结果为 “SQL 函数”。

  • LOWER(str) :将字符串中的所有字母转换为小写。例如,SELECT LOWER('MySQL FunCtIoNs') ,结果为 “mysql functions”。

  • UPPER(str) :把字符串中的所有字母转换为大写。例如,SELECT UPPER('mysql functions') ,结果为 “MYSQL FUNCTIONS”。

  • LEFT(str,length) :从字符串左边开始截取指定长度的字符串。例如,SELECT LEFT('MySQL',3) ,结果为 “MyS”。

  • RIGHT(str,length) :从字符串右边开始截取指定长度的字符串。例如,SELECT RIGHT('MySQL',3) ,结果为 “SQL”。

  • LENGTH(str) :返回字符串的字节长度。例如,SELECT LENGTH('MySQL') ,结果为 5。

  • TRIM(str) :去除字符串两端的空格。例如,SELECT TRIM(' MySQL ') ,结果为 “MySQL”。

  • SUBSTRING(str,pos,len) :从字符串的指定位置开始截取指定长度的字符串。例如,SELECT SUBSTRING('MySQL functions',6,9) ,结果为 “functions”。

数值函数

  • ABS(N) :返回 N 的绝对值。例如,SELECT ABS(-10) ,结果为 10。

  • CEIL(N) :返回大于或等于 N 的最小整数,即对 N 进行向上取整。例如,SELECT CEIL(3.2) ,结果为 4。

  • FLOOR(N) :返回小于或等于 N 的最大整数,即对 N 进行向下取整。例如,SELECT FLOOR(3.8) ,结果为 3。

  • ROUND(N,D) :将数字 N 四舍五入到小数点后 D 位。例如,SELECT ROUND(3.14159,3) ,结果为 3.142。

  • MOD(N,M) :返回 N 除以 M 的余数。例如,SELECT MOD(10,3) ,结果为 1。

  • POWER(N,M) :计算 N 的 M 次方。例如,SELECT POWER(2,3) ,结果为 8。

  • SQRT(N) :返回 N 的平方根。例如,SELECT SQRT(25) ,结果为 5。

日期和时间函数

  • NOW() :返回当前日期和时间。例如,SELECT NOW() ,结果可能是 “2024-09-18 15:30:00”。

  • CURDATE() :返回当前日期。例如,SELECT CURDATE() ,结果可能是 “2024-09-18”。

  • CURTIME() :返回当前时间。例如,SELECT CURTIME() ,结果可能是 “15:30:00”。

  • DATE_ADD(date,INTERVAL expr type) :将指定的时间间隔添加到日期中。例如,SELECT DATE_ADD('2024-09-18', INTERVAL 3 DAY) ,结果为 “2024-09-21”。

  • DATE_SUB(date,INTERVAL expr type) :从日期中减去指定的时间间隔。例如,SELECT DATE_SUB('2024-09-18', INTERVAL 5 DAY) ,结果为 “2024-09-13”。

  • DATEDIFF(date1,date2) :返回两个日期之间的天数差。例如,SELECT DATEDIFF('2024-09-20','2024-09-15') ,结果为 5。

  • YEAR(date) :返回日期的年份部分。例如,SELECT YEAR('2024-09-18') ,结果为 2024。

  • MONTH(date) :返回日期的月份部分。例如,SELECT MONTH('2024-09-18') ,结果为 9。

  • DAY(date) :返回日期的日期部分。例如,SELECT DAY('2024-09-18') ,结果为 18。

聚合函数

  • COUNT(column_name) :用于统计指定列中非空值的个数。例如,SELECT COUNT(name) FROM students ,统计 students 表中 name 列非空值的个数。

  • SUM(column_name) :计算指定列中数值的总和。例如,SELECT SUM(score) FROM students ,计算 students 表中 score 列所有值的总和。

  • AVG(column_name) :计算指定列中数值的平均值。例如,SELECT AVG(score) FROM students ,计算 students 表中 score 列所有值的平均值。

  • MAX(column_name) :返回指定列中的最大值。例如,SELECT MAX(score) FROM students ,获取 students 表中 score 列的最大值。

  • MIN(column_name) :返回指定列中的最小值。例如,SELECT MIN(score) FROM students ,获取 students 表中 score 列的最小值。

其他函数

  • IF(condition, value_if_true, value_if_false) :根据条件返回不同的值。例如,SELECT IF(3>2, '正确', '错误') ,结果为 “正确”。

  • CASE expression WHEN value1 THEN result1 WHEN value2 THEN result2 ... ELSE resultn END :用于根据表达式的不同值返回不同的结果。例如:

    复制

    SELECT CASE score
    WHEN 90 THEN '优秀'
    WHEN 80 THEN '良好'
    WHEN 70 THEN '中等'
    ELSE '及格'
    END AS grade
    FROM students
    ,根据 score 列的值返回对应的等级。

这些函数在 MySQL 数据库操作中非常实用,可以根据实际需求灵活运用,以实现对数据的各种处理和查询。


网站公告

今日签到

点亮在社区的每一天
去签到