MySQL中常用的函数

MySQL提供了丰富的函数,用于处理各种数据类型,包括数值、字符串、日期和时间等。这些函数可以帮助用户进行复杂的数据操作,提高数据查询的效率和灵活性。以下是一些常用的MySQL函数:

一、数学函数

数学函数用于执行数学计算,如加法、减法、乘法、除法、取余、四舍五入、取绝对值等。

  • ABS(x):返回x的绝对值。
  • CEIL(x) 或 CEILING(x):返回大于或等于x的最小整数。
  • FLOOR(x):返回小于或等于x的最大整数。
  • ROUND(x, d):将x四舍五入到小数点后d位。
  • TRUNCATE(x, d):将x截断到小数点后d位,不进行四舍五入。
  • EXP(x):返回e的x次方。
  • SQRT(x):返回x的平方根。
  • RAND():返回0到1之间的随机数。
  • PI():返回圆周率。

二、字符串函数

字符串函数用于对字符串类型的数据进行操作,如连接、替换、截取、转换大小写等。

  • CONCAT(str1, str2, ...):连接两个或多个字符串。
  • CONCAT_WS(separator, str1, str2, ...):使用指定的分隔符来连接两个或多个字符串。
  • SUBSTRING(str, pos, len)SUBSTR(str, pos, len):从字符串str的pos位置开始获取长度为len的子字符串。
  • LENGTH(str):返回字符串的字节长度。
  • CHAR_LENGTH(str):返回字符串的字符长度。
  • UPPER(str):将字符串str的所有字母转换为大写。
  • LOWER(str):将字符串str的所有字母转换为小写。
  • LEFT(str, len):返回字符串str的前len个字符。
  • RIGHT(str, len):返回字符串str的后len个字符。
  • TRIM([[REMSTR] FROM] STR):返回字符串STR,其前导和尾随的REMSTR字符串已被删除。如果没有REMSTR,则删除空格。
  • REPLACE(str, from_str, to_str):将字符串str中的from_str替换为to_str。
  • INSERT(str, pos, len, newstr):在字符串str的pos位置插入长度为len的newstr字符串。
  • REVERSE(str):返回字符串str的反转。

三、日期和时间函数

日期和时间函数用于处理日期和时间值,如获取当前日期、时间、日期加减、提取日期部分等。

  • NOW():返回当前的日期和时间。
  • CURDATE():返回当前的日期。
  • CURTIME():返回当前的时间。
  • DATE(date):从日期或日期时间表达式中提取日期部分。
  • TIME(time):从日期时间表达式中提取时间部分。
  • YEAR(date):从日期中提取年份。
  • MONTH(date):从日期中提取月份。
  • DAY(date):从日期中提取日。
  • HOUR(time):从时间中提取小时。
  • MINUTE(time):从时间中提取分钟。
  • SECOND(time):从时间中提取秒。
  • DATE_ADD(date, INTERVAL expr unit):向日期添加指定的时间间隔。
  • DATE_SUB(date, INTERVAL expr unit):从日期减去指定的时间间隔。
  • DATEDIFF(date1, date2):返回两个日期之间的天数差。

四、聚合函数

聚合函数用于执行计算并返回单个值的函数,通常用在SELECT语句的GROUP BY子句中。

  • AVG(expression):返回表达式expression的平均值。
  • COUNT(expression):返回表达式expression的非NULL值的数量。
  • SUM(expression):返回表达式expression的总和。
  • MAX(expression):返回表达式expression的最大值。
  • MIN(expression):返回表达式expression的最小值。

五、逻辑函数

逻辑函数用于执行逻辑操作,如判断条件、选择不同的值等。

  • IF(condition, true_value, false_value):如果条件condition为真,则返回true_value,否则返回false_value。
  • CASE:根据条件选择不同的结果输出。

六、其他函数

  • VERSION():返回MySQL服务器的版本。
  • DATABASE():返回当前数据库的名称。
  • USER():返回当前登录的用户。
  • MD5(str):返回字符串str的MD5加密值。
  • SHA1(str):返回字符串str的SHA-1加密值。
相关推荐
@小红花1 小时前
MySQL数据库从0到1
数据库·mysql·oracle
[听得时光枕水眠]2 小时前
MySQL基础(三)DQL(Data Query Language,数据查询语言)
数据库·mysql·oracle
我科绝伦(Huanhuan Zhou)2 小时前
深入解析Oracle SQL调优健康检查工具(SQLHC):从原理到实战优化
数据库·sql·oracle
一只叫煤球的猫5 小时前
MySQL 8.0 SQL优化黑科技,面试官都不一定知道!
后端·sql·mysql
寒山李白5 小时前
MySQL安装与配置详细讲解
数据库·mysql·配置安装
文牧之6 小时前
PostgreSQL 的扩展pg_freespacemap
运维·数据库·postgresql
deriva6 小时前
某水表量每15分钟一报,然后某天示数清0了,重新报示值了 ,如何写sql 计算每日水量
数据库·sql
Leo.yuan7 小时前
数据库同步是什么意思?数据库架构有哪些?
大数据·数据库·oracle·数据分析·数据库架构
zhangzhangkeji7 小时前
(33)课54--??:3 张表的 join-on 连接举例,多表查询总结。
mysql