第 12 章函数和 Operators

目录

表达式可以在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
Updated at: 7 months ago
使用其他数据库引擎中的数据类型Table of contentFunction 和 Operator Reference