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加密值。
相关推荐
白帽攻防录5 小时前
SRC 挖洞:Roundcube 预认证 SQL 注入深度复盘,CVE-2026-48842 preg_replace 转义绕过怎么打穿邮件系统
网络·数据库·sql·网络安全·sql注入
꯭自꯭闭꯭6 小时前
达梦SQL优化相关
linux·运维·数据库·sql
nhdh6 小时前
B+树揭秘:MySQL索引核心原理全解析
数据结构·b树·mysql
对空六课6 小时前
支持注意力分析的热力图工具有哪些?
前端·数据库·数据分析
南京码讯光电技术有限公司7 小时前
How to Design an Antenna System for an Industrial WiFi Module
数据库·人工智能
lusklusklusk8 小时前
Oracle数据库基础之2_体系结构
数据库·oracle
可乐ea8 小时前
从第一性原理构建 AI Agent:提示词、工具、技能与记忆全解剖
数据库·人工智能·工具调用·ai智能体·提示词工程·agent开发·智能体记忆
余槐i8 小时前
MySQL 深分页从 4 秒到 60 毫秒:延迟关联减少回表的实测与代价
mysql·性能优化·sql优化·执行计划·慢查询优化
东方护航数据恢复(深圳)8 小时前
医疗案例:HIS/PACS 数据库页损坏修复,医院不停诊完成恢复【东方护航数据恢复深圳店】
数据库·数据恢复·医疗·二次开盘
lusklusklusk9 小时前
Oracle数据库基础之11_Duplicate和Dataguard和RAC
数据库·oracle