79 lines
2.0 KiB
Markdown
79 lines
2.0 KiB
Markdown
比较运算符
|
|
==========================
|
|
|
|
|
|
|
|
以下为所有比较运算符列表:
|
|
|
|
|
|
| 运算符 | 操作数 | 含义 | NULL参与运算 |
|
|
|---------------------|-----|------------|----------------|
|
|
| `=` | 二元 | 等于。 | 结果为NULL。 |
|
|
| `<>`/`!=` | 二元 | 不等于。 | 结果为NULL。 |
|
|
| `>` | 二元 | 大于。 | 结果为NULL。 |
|
|
| `>=` | 二元 | 大于等于。 | 结果为NULL。 |
|
|
| `<` | 二元 | 小于。 | 结果为NULL。 |
|
|
| `<=` | 二元 | 小于等于。 | 结果为NULL。 |
|
|
| `[NOT] IN` | 二元 | 是否在集合中。 | 详见说明。 |
|
|
| `[NOT] BETWEEN AND` | 三元 | 是否在区间内。 | 详见说明。 |
|
|
| `IS [NOT] TRUE` | 一元 | 是否等于TRUE。 | 结果为TRUE或FALSE。 |
|
|
| `IS [NOT] FALSE` | 一元 | 是否等于FALSE。 | 结果为TRUE或FALSE。 |
|
|
| `IS [NOT] NULL` | 一元 | 是否等于NULL。 | 结果为TRUE或FALSE。 |
|
|
| `<=>` | 二元 | 安全等于。 | 结果为TRUE或FALSE。 |
|
|
|
|
|
|
|
|
|
|
|
|
以下为部分运算符对NULL的特殊处理:
|
|
|
|
* `value [NOT] IN ()`:
|
|
|
|
|
|
|
|
|
|
<!-- -->
|
|
|
|
|
|
|
|
<!-- -->
|
|
|
|
|
|
|
|
<!-- -->
|
|
|
|
* `value [NOT] BETWEEN lower AND upper`:
|
|
|
|
|
|
|
|
|
|
<!-- -->
|
|
|
|
|
|
|
|
<!-- -->
|
|
|
|
|
|
|
|
例如:
|
|
|
|
```javascript
|
|
OceanBase (root@oceanbase)> SELECT 1 IN (1, NULL), 1 IN (2, NULL);
|
|
+----------------+----------------+
|
|
| 1 IN (1, NULL) | 1 IN (2, NULL) |
|
|
+----------------+----------------+
|
|
| 1 | NULL |
|
|
+----------------+----------------+
|
|
1 row in set (0.01 sec)
|
|
|
|
OceanBase (root@oceanbase)> 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 (0.01 sec)
|
|
```
|
|
|
|
|