---
title: in 优化 query range 抽取有问题导致查询结果不一致-OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于in 优化 query range 抽取有问题导致查询结果不一致相关的常见问题和使用技巧，帮助您快速解决in 优化 query range 抽取有问题导致查询结果不一致的难题。
---
切换语言

- 简体中文
- English

划线反馈

# in 优化 query range 抽取有问题导致查询结果不一致

更新时间：2026-05-26 09:46

适用版本： V3.2.x 内容类型：Troubleshoot  

## 问题现象

命中索引且含 in expr 时，在特定的场景下会导致查询返回的结果集不对。出现该 BUG 需满足 `WHERE` 条件中含 4 个及以上索引列，且：

1. 第一个列是等值谓词。
 2. 第二个列是范围谓词。
 3. 第三个列是 in 表达式。
 4. 第四个列是任意谓词。

其中，第 1 个条件可是 1 或多个等值谓词，第 2 个条件后也可跟着 0 或多个等值谓词。 例如，表 `t1` 在 `c1,c2,c3,c4` 列上构建了索引，当查询条件为 `c1 = 1 and c2 >= 1 and c2 <= 10 and c3 in (1,2,3) and c4 = 1` 时，没有对返回的结果集按 `c2 >= 1 and c2 <= 10` 进行过滤，导致出现正确性问题。

## 关键诊断信息

### 触发条件

`WHERE` 条件中含 4 个及以上索引列，且：

## 问题原因

对于 `c1 = 1 and c2 >= 1 and c2 <= 10 and c3 in (1,2,3) and c4 = 1`，优化器会认为 `c1,c2` 列的表达式能抽出精确的 range，因此把 `c1,c2` 列相关的表达式从 filter 中移除了，实际上只抽取了 c1 列上的 range，从而导致结果集出错。

![image](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/knowledge-base/database/sql/20250513in-query-range-select-sql.png)

## 问题的风险及影响

正确性问题。

## 影响租户

影响 OceanBase 数据库中的 Oracle 租户和 MySQL 租户，对于 SYS 租户无影响。

## 影响的版本

OceanBase 数据库企业版 V3.2.3 GA（oceanbase-3.2.3.0-20220419）及之后版本、V3.2.4 GA（oceanbase-3.2.4.0-100000072022102819）及之后版本。

## 解决方法

- 升级至问题已修复版本。目前已修复的版本包括 OceanBase 数据库企业版 V3.2.3 BP7 Hotfix2（oceanbase-3.2.3.3-107020062023022810）、V3.2.3 BP7 Hotfix3（oceanbase-3.2.3.3-107030052023031712）、V3.2.3 BP7 Hotfix4（oceanbase-3.2.3.3-107040032023032910）、V3.2.3 BP7 Hotfix5（oceanbase-3.2.3.3-107050022023040817）、V3.2.3 BP7 Hotfix6（oceanbase-3.2.3.3-107060012023041113）、V3.2.3 BP8（oceanbase-3.2.3.3-108000062023041511）及之后版本、V3.2.4 BP2（oceanbase-3.2.4.7-107000012023113010）及之后版本。
 - 改写 SQL，将 in 表达式改为等价的 or 表达式。
 - 改索引或加索引，使得命中索引的谓词不满足上述 4 个条件之一。

## 规避方式

- 改写 SQL，将 in 表达式改为等价的 or 表达式。
 - 改索引或加索引，使得命中索引的谓词不满足上述 4 个条件之一。

Previous

[针对大 in 谓词 query range 抽取的优化](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000465740)

Next

[不含参数的可计算表达式抽出的 query range 错误](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000441383) ![有帮助](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) 咨询热线
