第 12 章函数和 Operators

目录

  • 12.1 Function 和 Operator Reference

  • 12.2 表达式 Evaluation 中的类型转换

  • 12.3 Operators

  • 12.4 控制流功能

  • 12.5 String 函数和 Operators

  • 12.6 数字函数和 Operators

  • 12.7 Date 和 Time 函数

  • 12.8 MySQL 使用什么 Calendar?

  • 12.9 Full-Text 搜索功能

  • 12.10 演员函数和 Operators

  • 12.11 XML 函数

  • 12.12 位功能和 Operators

  • 12.13 加密和压缩功能

  • 12.14 锁定功能

  • 12.15 信息功能

  • 12.16 空间分析功能

  • 12.17 JSON 函数

  • 12.18 与 Global Transaction Identifiers(GTID)一起使用的函数

  • 12.19 MySQL 企业加密功能

  • 12.20 Aggregate(GROUP BY)函数

  • 12.21 其他功能

  • 12.22 精确数学

表达式可以在SQL statements 中的多个点使用,例如选择 statements 的ORDER BYHAVING子句,选择,删除或UPDATE语句的WHERE子句或组 statements。表达式可以使用文字值,列值,NULL,built-in 函数,存储函数,user-defined 函数和 operators 来编写。本章介绍了在 MySQL 中编写表达式所允许的函数和 operators。写入存储函数和 user-defined 函数的指令在第 23.2 节,“使用存储的例程”和第 28.4 节,“向 MySQL 添加新函数”中给出。有关描述服务器如何将 references 解释为不同类型函数的规则,请参阅第 9.2.5 节,“函数名称解析和解析”。

除非在特定 function 或 operator 的文档中另有说明,否则包含NULL的表达式始终会生成NULL value。

注意
默认情况下,function name 和后面的括号之间不能有空格。这有助于 MySQL 解析器区分 function calls 和 references 与恰好与 function 具有相同 name 的表或列。但是,允许使用 function arguments 周围的空格。
通过使用--sql-mode=IGNORE_SPACE选项启动它,可以告诉 MySQL 服务器在 function 名称之后接受空格。 (参见第 5.1.10 节,“服务器 SQL 模式” .)个别 client 程序可以通过mysql_real_connect()使用CLIENT_IGNORE_SPACE选项来请求此行为。在任何一种情况下,所有 function 名称都成为保留字。

为简洁起见,本章中的大多数示例都以缩写形式显示MySQL程序的输出。而不是以这种格式显示示例:

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

使用此格式:

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