历史版本。 PostgreSQL 9.1 已结束支持。 2016-10-27. 请参阅 当前版本手册.
第 9 章 函数和操作符
目录
- 9.1. 逻辑操作符
- 9.2. 比较操作符
- 9.3. 数学函数和操作符
- 9.4. 字符串函数和操作符
- 9.5. 二进制串函数和操作符
- 9.6. 位串函数和操作符
- 9.7. 模式匹配
- 9.8. 数据类型格式化函数
- 9.9. 日期/时间函数和操作符
- 9.10. 枚举支持函数
- 9.11. 几何函数和操作符
- 9.12. 网络地址函数和操作符
- 9.13. 文本搜索函数和操作符
- 9.14. XML 函数
- 9.15. 序列操作函数
- 9.16. 条件表达式
- 9.17. 数组函数和操作符
- 9.18. 聚合函数
- 9.19. 窗口函数
- 9.20. 子查询表达式
- 9.21. 行和数组比较
- 9.22. 集合返回函数
- 9.23. 系统信息函数
- 9.24. 系统管理函数
- 9.25. 触发器函数
PostgreSQL为内置数据类型提供了大量函数和操作符。用户也可以按第 V 部分中的说明定义自己的函数和操作符。
psql命令\df和\do可分别用于列出所有可用的函数和操作符。
如果你关心可移植性,请注意,本章描述的大多数函数和操作符,除了最简单的算术和比较操作符以及少数明确标记的函数之外,都不是SQL标准规定的。不过,其中一些扩展功能也存在于其他SQL数据库管理系统中,而且在很多情况下,各实现之间的这类功能是兼容且一致的。本章也并非详尽无遗;手册的相关章节中还有其他函数。
9.1. 逻辑操作符 #
AND |
OR |
NOT |
SQL使用三值的逻辑系统,包括真、假和null,它表示“未知”。观察下面的真值表:
a | b | a AND b | a OR b |
|---|---|---|---|
| TRUE | TRUE | TRUE | TRUE |
| TRUE | FALSE | FALSE | TRUE |
| TRUE | NULL | NULL | TRUE |
| FALSE | FALSE | FALSE | FALSE |
| FALSE | NULL | FALSE | NULL |
| NULL | NULL | NULL | NULL |
a | NOT a |
|---|---|
| TRUE | FALSE |
| FALSE | TRUE |
| NULL | NULL |
操作符AND和OR是可交换的,也就是说,你可以交换左右操作数而不影响结果。但请参见第 4.2.14 节获取有关子表达式计算顺序的更多信息。