---
title: union 子句有相同 output expr 且需要与其他表关联时，生成的 NLJ 计划执行结果错误-OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于 union 子句有相同 output expr 且需要与其他表关联时，生成的 NLJ 计划执行结果错误相关的常见问题和使用技巧，帮助您快速解决 union 子句有相同 output expr 且需要与其他表关联时，生成的 NLJ 计划执行结果错误的难题。
---
切换语言

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

划线反馈

# union 子句有相同 output expr 且需要与其他表关联时，生成的 NLJ 计划执行结果错误

更新时间：2026-05-14 07:41

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

## 问题现象

用户查询的 union 子句有相同 output expr，并且需要与其他表关联时，生成的 NLJ 计划执行结果错误。

## 关键诊断信息

### 触发条件

查询的 union 子句有相同 output expr，并且需要与其他表关联，从而生成了 NLJ 执行计划。

## 问题原因

生成非基表条件下压路径时，对于 set stmt 下压了错误的条件，导致计划生成不对。

## 问题的风险及影响

查询执行结果错误。

## 影响租户

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

## 影响版本

OceanBase 数据库企业版 V2.2.77 GA（oceanbase-2.2.77-20210508211731）及之后版本、V3.1.2 GA（oceanbase-3.1.2-20210618150922）及之后版本、V3.2.3 GA（oceanbase-3.2.3.0-20220418212020）及之后版本、V3.2.4 GA（oceanbase-3.2.4.0-100000072022102819）及之后版本。

## 解决方法

升级至问题已修复版本。目前已修复的版本包括 OceanBase 数据库企业版 V2.2.77 BP17（oceanbase-2.2.77-117000112023051914）、V3.2.3 BP8（oceanbase-3.2.3.3-108000062023041511）、V3.2.4 BP2（oceanbase-3.2.4.2-102000042023022717）。

- 使用 USE_HASH Hint 避免 NLJ 计划。

## 规避方式

使用 USE_HASH Hint 避免 NLJ 计划。

上一篇

[使用 ADAPTIVE JOIN 导致结果少行](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000002762602)

下一篇

[查询计划出现 temp table transform 算子和 NLJ 时执行结果错误](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000002309274) ![有帮助](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) 咨询热线
