华为云云数据库GaussDB连接时内表物化的Hint_云淘科技
功能描述
实现在指定连接的inner表时,对内表进行物化。
语法格式
[no] materialize_inner([@queryblock] inner_table_list)
参数说明
no表示hint的物化方式不使用。
@queryblock 见指定Hint所处的查询块Queryblock章节,可省略,表示在当前查询块生效。
inner_table_list: 执行连接操作时,希望被物化的内表序列,为空格隔开的字符串。
示例
t1表作为内表物化,(t1 t2)的结果作为连接的内表被物化。
gaussdb=# explain (costs off) select /*+materialize_inner(t1) materialize_inner(t1 t2)*/ * from t1,t2,t3 where t1.c3 = t2.c3 and t2.c2=t3.c2 and t1.c2=5; QUERY PLAN ---------------------------------------------------------------------- Streaming (type: GATHER) Node/s: All datanodes -> Nested Loop Join Filter: (t2.c2 = t3.c2) -> Seq Scan on t3 -> Materialize -> Streaming(type: BROADCAST) Spawn on: All datanodes -> Nested Loop Join Filter: (t1.c3 = t2.c3) -> Seq Scan on t2 -> Materialize -> Streaming(type: BROADCAST) Spawn on: All datanodes -> Index Scan using it3 on t1 Index Cond: (c2 = 5) (16 rows)
父主题: 使用Plan Hint进行调优
同意关联代理商云淘科技,购买华为云产品更优惠(QQ 78315851)
内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家