Documentation Home
MySQL 8.3 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 40.8Mb
PDF (A4) - 40.9Mb
Man Pages (TGZ) - 294.0Kb
Man Pages (Zip) - 409.0Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb
Excerpts from this Manual

MySQL 8.3 Reference Manual  /  Functions and Operators

第 14 章 函数和操作符

目录

14.1 内置函数和操作符参考
14.2 可加载函数参考
14.3 表达式评估中的类型转换
14.4 操作符
14.4.1 操作符优先级
14.4.2 比较函数和操作符
14.4.3 逻辑操作符
14.4.4 赋值操作符
14.5 流控制函数
14.6 数值函数和操作符
14.6.1 算术操作符
14.6.2 数学函数
14.7 日期和时间函数
14.8 字符串函数和操作符
14.8.1 字符串比较函数和操作符
14.8.2 正则表达式
14.8.3 字符集和排序规则的函数结果
14.9 全文搜索函数
14.9.1 自然语言全文搜索
14.9.2 布尔全文搜索
14.9.3 全文搜索查询扩展
14.9.4 全文搜索停用词
14.9.5 全文搜索限制
14.9.6 微调 MySQL 全文搜索
14.9.7 添加用户定义的排序规则用于全文索引
14.9.8 ngram 全文解析器
14.9.9 MeCab 全文解析器插件
14.10 转换函数和操作符
14.11 XML 函数
14.12 位函数和操作符
14.13 加密和压缩函数
14.14 锁定函数
14.15 信息函数
14.16 空间分析函数
14.16.1 空间函数参考
14.16.2 空间函数参数处理
14.16.3 从 WKT 值创建几何值的函数
14.16.4 从 WKB 值创建几何值的函数
14.16.5 MySQL 特定的创建几何值函数
14.16.6 几何格式转换函数
14.16.7 几何属性函数
14.16.8 空间操作符函数
14.16.9 测试空间关系的函数
14.16.10 空间 Geohash 函数
14.16.11 空间 GeoJSON 函数
14.16.12 空间聚合函数
14.16.13 空间便捷函数
14.17 JSON 函数
14.17.1 JSON 函数参考
14.17.2 创建 JSON 值的函数
14.17.3 搜索 JSON 值的函数
14.17.4 修改 JSON 值的函数
14.17.5 返回 JSON 值属性的函数
14.17.6 JSON 表函数
14.17.7 JSON 模式验证函数
14.17.8 JSON 实用函数
14.18 复制函数
14.18.1 组复制函数
14.18.2 全局事务标识符(GTIDs)函数
14.18.3 异步复制通道故障转移函数
14.18.4 基于位置的同步函数
14.19 聚合函数
14.19.1 聚合函数描述
14.19.2 GROUP BY 修饰符
14.19.3 MySQL 的 GROUP BY 处理
14.19.4 函数依赖项检测
14.20 窗口函数
14.20.1 窗口函数描述
14.20.2 窗口函数概念和语法
14.20.3 窗口函数帧规范
14.20.4 命名窗口
14.20.5 窗口函数限制
14.21 性能模式函数
14.22 内部函数
14.23 杂项函数
14.24 精度数学
14.24.1 数值类型
14.24.2 DECIMAL 数据类型特征
14.24.3 表达式处理
14.24.4舍入行为
14.24.5 精度数学示例

表达式可以在 SQL 语句的多个点使用,例如在 ORDER BYHAVING 子句中的 SELECT 语句中,在 WHERE 子句中的 SELECTDELETEUPDATE 语句中,或者在 SET 语句中。表达式可以使用多个来源的值,例如文字值、列值、NULL、变量、内置函数和操作符、可加载函数和存储函数(一种存储对象)。

本章描述了在 MySQL 中编写表达式时允许使用的内置函数和操作符。有关可加载函数和存储函数的信息,请参阅 第 7.7 节,“MySQL 服务器可加载函数”第 27.2 节,“使用存储例程”。有关服务器如何解释不同种类函数的引用规则,请参阅 第 11.2.5 节,“函数名称解析和解析”

包含 NULL 的表达式总是产生 NULL 值,除非特定函数或操作符的文档中另有说明。

注意

默认情况下,函数名称和其后的括号之间不能有空格。这有助于 MySQL 解析器区分函数调用和具有相同名称的表或列的引用。然而,函数参数之间的空格是允许的。

要告诉 MySQL 服务器接受函数名称后的空格,可以在启动服务器时使用 --sql-mode=IGNORE_SPACE 选项。(参阅 第 7.1.11 节,“服务器 SQL 模式”。)单个客户端程序可以通过使用 CLIENT_IGNORE_SPACE 选项请求这种行为,例如使用 mysql_real_connect()。在这两种情况下,所有函数名称都将变为保留字。

为了简洁起见,本章中的某些示例将显示 mysql 程序的输出,以简洁的形式显示。例如,而不是显示以下形式:

mysql> SELECT MOD(29,9);
+-----------+
| mod(29,9) |
+-----------+
|         2 |
+-----------+
1 rows in set (0.00 sec)

而是使用以下形式:

mysql> SELECT MOD(29,9);
        -> 2