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加密值。
相关推荐
秋千码途26 分钟前
一道同分排名的SQL题
数据库·sql
似水流年流不尽思念2 小时前
MySQL 的 MVCC 到底解决了幻读问题没有?请举例说明。
mysql·面试
秋难降2 小时前
零基础学SQL(八)——事务
数据库·sql·mysql
Starry_hello world2 小时前
MySql 表的约束
数据库·笔记·mysql·有问必答
槲栎3 小时前
CentOS7中使用yum安装mysql
mysql
RestCloud3 小时前
ETLCloud中的数据转化规则是什么意思?怎么执行
数据库·数据仓库·etl
一个天蝎座 白勺 程序猿3 小时前
Apache IoTDB(4):深度解析时序数据库 IoTDB 在Kubernetes 集群中的部署与实践指南
数据库·深度学习·kubernetes·apache·时序数据库·iotdb
.Shu.4 小时前
Redis zset 渐进式rehash 实现原理、触发条件、执行流程以及数据一致性保障机制【分步源码解析】
数据库·redis·缓存
君不见,青丝成雪4 小时前
大数据技术栈 —— Redis与Kafka
数据库·redis·kafka
悟能不能悟4 小时前
排查Redis数据倾斜引发的性能瓶颈
java·数据库·redis