---
title: OmniCache物化视图不支持重写的场景规则
description: "OmniCache物化视图不支持重写的场景规则如表1所示。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengboostkithistory/2200/bds/kunpengomnicache_20_0021.html
sourcePath: /source/zh/kunpengboostkithistory/2200/bds/kunpengomnicache_20_0021.html
indexId: ce56fa127ce0770355c35bed67c8d88cf4bc0ce2fd4600540958a09064933f5e72
---
# OmniCache物化视图不支持重写的场景规则

OmniCache物化视图不支持重写的场景规则如表1所示。


**表1 OmniCache物化视图不支持重写的场景规则**

| 项目 | 说明 |
| --- | --- |
| 基本规则 | 查询需要的数据，视图无法满足，不支持重写。例如：查询：c1>=2，视图：c1>2，不支持重写。 In、Like需要查询和视图条件完全匹配，不满足则不支持重写。例如：查询：in (2,3) ，视图： in(1,2,3)，不支持重写。 查询SQL中已经使用了视图，不支持重写。 |
| Join规则 | 只支持Inner\-Join类型的重写，其他类型的Join不支持重写。 通过isValidPlan检查当前匹配的查询和视图的逻辑计划树是否满足最小单元的要求，只包含以下类型算子，不满足则不支持重写。 LogicalRelation HiveTableRelation Project Filter Join SubqueryAlias |
| Aggregate规则 | 视图逻辑计划树根节点必须是Aggregate算子。像order by、having的根节点是Sort、Filter，这种视图不支持重写。 查询和视图逻辑计划树匹配，两边根节点都必须是Aggregate算子，然后会通过isValidPlan检查子树是否满足最小单元的要求，不满足则不支持重写。 查询中出现了视图中不存在的聚合函数，不支持重写。 查询group by字段是视图group by字段的子集，只支持对以下聚合函数（不带distinct）rollUp，不满足则不支持重写。 sum min max count |
