云数据库 GAUSSDB-Query:instr_unique_sql_combination_options
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='';
归并功能配置项 |
归并功能行为控制 |
---|---|
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。