云数据库 GAUSSDB-Query:instr_unique_sql_combination_options

时间:2024-11-13 14:45:08

instr_unique_sql_combination_options

参数说明:Unique SQL同类语句归并功能配置项,该参数的值由若干个配置项用逗号隔开构成。该参数可在PDB级别设置。

开启该特性会将同类语句的Unique SQL ID归一,并将生成的Unique SQL String做归一化处理。

参数类型字符串

参数单位

取值范围参照表1

  • 归并功能配置时,按照表1设置字符串,多个配置项之间用逗号隔开,例如:SET instr_unique_sql_combination_options='in_clause';
  • 参数设置为空时,即为不开启该功能,例如:SET instr_unique_sql_combination_options='';
表1 归并功能配置项

归并功能配置项

归并功能行为控制

in_clause

控制select in()语句的in中仅含有固定参数与预编译绑定参数的情况进行归并。

例1:select * from example_table where column in (1,2,3);

归并后Unique SQL String:select * from example_table where column in (1…n);

例2:select * from example_table where column in ($1,$2,$3);

归并后Unique SQL String:select * from example_table where column in ($1…$n);

例3:select * from example_table where column in (1,2,$1,3,$2);

归并后Unique SQL String:select * from example_table where column in (1...n,$1...$n);

例4:select * from example_table where (column1, column2) in ((1, 'a'), (2, 'b'), (3, 'c'));

归并后Unique SQL String:select * from example_table where (column1, column2) in ((1...n));

默认值"in_clause"。在PDB场景内,若未设置该参数,则继承来自全局的设置。

设置方式该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。

设置建议推荐使用默认值。

设置不当的风险与影响:修改该参数值将使涉及归并的查询语句的Unique SQL ID发生改变,会对已创建SQLpatch的SQL语句产生影响。

  • 升级时默认值为"",新实例下发时默认值为"in_clause"。
  • 对于bigint、real、float4、blob、numeric、decimal、number、dec、integer类型的值,在in()中含有单个参数与多个参数的两种情况,会生成两种不同的unique_sql_id。
support.huaweicloud.com/centralized-devg-v8-gaussdb/gaussdb-40-0382.html