---
title: "比较运算符 - OceanBase 数据库 V4.6.0 | OceanBase 文档中心"
description: 比较运算符 OceanBase 数据库支持常用的比较运算符。 比较运算符概览 OceanBase 数据库当前版本所支持的比较运算符的详细信息如下表所示。 运算符 操作数 含义 NULL 参与运算时的结果 = 二元 等于 NULL &lt;=&gt; 二元 安全等于 详见下方说明 &lt;&gt; / != 二元 不等于 NULL &gt; 二元 …
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*P8CuR4UJ_FkAAAAAAAAAAAAADiGDAQ/original) OceanBase 数据库分布式版 - V 4.6.0

# 比较运算符

更新时间：2026-05-04 14:09:41

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.6.0/zh-CN/700.reference/500.sql-reference/100.sql-syntax/200.common-tenant-of-mysql-mode/200.operator-of-mysql-mode/500.comparison-operators-of-mysql-mode.md)  

OceanBase 数据库支持常用的比较运算符。

## 比较运算符概览

OceanBase 数据库当前版本所支持的比较运算符的详细信息如下表所示。

| 运算符 | 操作数 | 含义 | NULL 参与运算时的结果 |
| --- | --- | --- | --- |
| `=` | 二元 | 等于 | `NULL` |
| `<=>` | 二元 | 安全等于 | 详见下方说明 |
| `<>` / `!=` | 二元 | 不等于 | `NULL` |
| `>` | 二元 | 大于 | `NULL` |
| `>=` | 二元 | 大于等于 | `NULL` |
| `<` | 二元 | 小于 | `NULL` |
| `<=` | 二元 | 小于等于 | `NULL` |
| `[NOT] IN` | 二元 | 是否在集合中 | 详见下方说明 |
| `[NOT] BETWEEN AND` | 三元 | 是否在区间内 | 详见下方说明 |
| `[NOT] LIKE` | 三元 | 字符串通配符匹配 | 详见下方说明 |
| `IS [NOT] TRUE` | 一元 | 是否等于 `TRUE` | `TRUE` 或 `FALSE` |
| `IS [NOT] FALSE` | 一元 | 是否等于 `FALSE` | `TRUE` 或 `FALSE` |
| `IS [NOT] NULL` | 一元 | 是否等于 `NULL` | `TRUE` 或 `FALSE` |

## 说明

比较运算的结果为 1 (`TRUE`)、0 (`FALSE`) 或 `NULL`。运算操作数适用于数字和字符串。根据需要，字符串会自动转换为数字，数字会自动转换为字符串。默认情况下，字符串比较不区分大小写并使用当前字符集。

以下为部分运算符的语法介绍以及当 `NULL` 参与运算时的结果说明。

### <=>

对于安全等于 `<=>`，当 `NULL` 参与运算时，如果两个操作数均为 `NULL`，则返回 1；如果一个操作数为 `NULL`，则返回 0。示例如下：

```sql
obclient> SELECT 1 <=> 1, NULL <=> NULL, 1 <=> NULL;
+---------+---------------+------------+
| 1 <=> 1 | NULL <=> NULL | 1 <=> NULL |
+---------+---------------+------------+
|       1 |             1 |          0 |
+---------+---------------+------------+
1 row in set

```

### [NOT] IN

`IN` 语法如下：

```sql
expr IN (value,...)

```

`NOT IN` 语法等同于 `NOT (expr IN (value,...))` 即 `expr NOT IN (value,...)`。

对于 `IN` 运算，如果 `expr` 等于 `value,...` 列表中的任何值，则返回 1 (`TRUE`)，否则返回 0 (`FALSE`)。当 `expr` 为 `NULL` 时，结果为 `NULL`；当 `expr` 不为 `NULL` 且集合包含 `NULL` 时，如果集合中有非 `NULL` 值与 `expr` 相等，则结果为 `TRUE`，否则为 `NULL`。

不建议在 `value,...` 列表中混合带引号和不带引号的值，由于带引号的值（例如字符串）和不带引号的值（例如数字）的比较规则不同，混合类型可能会导致不一致的结果。

示例如下：

```sql
obclient> SELECT 1 IN (1, NULL), 1 IN (2, NULL);
+----------------+----------------+
| 1 IN (1, NULL) | 1 IN (2, NULL) |
+----------------+----------------+
|              1 |           NULL |
+----------------+----------------+
1 row in set

```

### [NOT] BETWEEN AND

`BETWEEN AND` 语法如下：

```sql
expr BETWEEN min AND max

```

`NOT BETWEEN AND` 语法等同于 `NOT (expr BETWEEN min AND max)` 即 `expr NOT BETWEEN min AND max`。

对于 `BETWEEN AND` 运算，如果 `expr` 大于或等于 `min` 且 `expr` 小于或等于 `max`，则 `BETWEEN` 返回 1，否则返回 0。如果所有参数都为同类型，等效于表达式 `(min <= expr AND expr <= max)`。

当 `expr` 为 `NULL`，或者 `min` 和 `max` 都为 `NULL` 时，结果为 `NULL`。当 `expr` 不为 `NULL`，而且只有 `min` 或 `max` 为 `NULL` 时，如果只通过 `expr` 和 `min`/`max` 就能确定运算结果，则直接使用这个结果，否则返回 `NULL`。

示例如下：

```sql
obclient> SELECT 1 BETWEEN 0 AND NULL, 1 BETWEEN 2 AND NULL;
+----------------------+----------------------+
| 1 BETWEEN 0 AND NULL | 1 BETWEEN 2 AND NULL |
+----------------------+----------------------+
|                 NULL |                    0 |
+----------------------+----------------------+
1 row in set

```

### [NOT] LIKE

`LIKE` 语法如下：

```sql
expr LIKE pat [ESCAPE 'escape_char']

```

`NOT LIKE` 语法等同于 `NOT (expr LIKE pat [ESCAPE 'escape_char'])` 即 `expr NOT LIKE pat [ESCAPE 'escape_char']`。

`LIKE` 用于字符串通配符匹配。结果返回 1 (`TRUE`) 或 0 (`FALSE`)。如果 `expr` 或 `pat` 为 `NULL`，则结果为 `NULL`。`ESCAPE` 用于定义转义符，如果 `pat` 中包含 `escape_char`，在匹配时 `escape_char` 后的字符将做为普通字符处理。

通配符包括如下两种：

- `%`：匹配任意长度字符串。
 - `_`：匹配单个字符。

示例如下：

```javascript
obclient> SELECT 'ab%' LIKE 'abc%' ESCAPE 'c';
+------------------------------+
| 'ab%' LIKE 'abc%' ESCAPE 'c' |
+------------------------------+
|                            1 |
+------------------------------+
1 row in set

```

 上一篇 下一篇 ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
