↑↓ 选择 ↵ 打开 ⌫ 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

受支持版本: 当前版本 (18) / 17 / 16 / 15 / 14
测试与开发版本: 19 / devel
不受支持的版本: 13 / 12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2 / 7.1
历史版本PostgreSQL 7.1 已于 2006 年 4 月结束社区维护,本页译文保留供仍在使用旧版本的读者参考。新系统请看当前版本。

4.2. 比较操作符 #

表 4.1. 比较操作符

操作符 描述
< 小于
> 大于
<= 小于或等于
>= 大于或等于
= 等于
<> or != 不等于

注意

!= 操作符在解析器阶段会转换为 <>。不可能实现行为不同的 != 和 <> 操作符。

比较操作符适用于所有相关的数据类型。所有比较操作符都是返回 boolean 类型值的二元操作符;类似 1 < 2 < 3 的表达式是无效的(因为没有用于比较布尔值和 3 的 < 操作符)。

除了比较操作符之外,还可以使用特殊的 BETWEEN 结构。

a BETWEEN x AND y

等价于

a >= x AND a <= y

类似地,

a NOT BETWEEN x AND y

等价于

a < x OR a > y

除了把第一种形式在内部改写为第二种形式所需的 CPU 周期外,这两种形式没有任何区别。

要检查一个值是否为 NULL,可以使用结构

expression IS NULL
expression IS NOT NULL

请不要使用 expression = NULL, 因为 NULL 不“等于” NULL。(NULL 表示 一个未知的值,因此两个未知的值是否相等是未知的。) Postgres 目前会把 x = NULL 子句转换为 x IS NULL, 以便让一些有问题的客户端应用(如 Microsoft Access)能够工作,但这在未来的版本中 可能会被停用。

提交更正

译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。