# 配置参数的hint
#### 功能描述
指明计划生成时配置参数的值，又称作guc hint。
#### 注意事项
- 如果hint设置的配置参数在语句级别生效，则该hint必须写在顶层查询中，而不能写在子查询中。对于UNION、INTERSECT、EXCEPT和MINUS语句，可以将在语句级别的guc hint写在参与集合运算的任意一个SELECT子句上，该guc hint设置的配置参数会在参与集合运算的每个SELECT子句上生效。
- 子查询提升时，该子查询上的所有guc hint会被丢弃。
- 如果一个配置参数既被语句级别的guc hint设置，又被子查询级别的guc hint设置，则子查询级别的guc hint在对应的子查询中生效，语句级别的guc hint在语句的其它子查询中生效。
 
#### 语法格式
```
set [global]([@block_name] guc_name guc_value)
```
#### 参数说明
- **global**表示hint设置的配置参数在语句级别生效，不加global表示hint设置的配置参数在子查询级别生效，即仅在hint所在的子查询中生效，在该语句的其它子查询中不生效。
- **block_name** 表示语句块的block_name，详细说明请参考[block_name](https://support.huaweicloud.com/devg-911-dws/dws_04_0456.html#ZH-CN_TOPIC_0000002166773764__zh-cn_topic_0000001460722632_li99021444551)。
- **guc_name**表示hint指定的配置参数的名称。

- **guc_value**表示hint指定的配置参数的值。
 
guc hint当前仅支持部分配置参数，并且有些配置参数不支持在子查询级别设置，只能在语句级别设置，以下为支持的参数列表：
表1guc hint支持的配置参数 
| 配置参数名                            | 是否支持在子查询级别设置 |
|:---|:---|
| agg_max_mem                        | 是           |
| agg_redistribute_enhancement        | 是           |
| best_agg_plan                    | 是         |
| cost_model_version                | 否          |
| cost_param                         | 否            |
| enable_array_optimization          | 否          |
| enable_bitmapscan                | 是           |
| enable_broadcast                  | 是         |
| enable_csqual_pushdown             | 否             |
| enable_redistribute                | 是            |
| enable_extrapolation_stats      | 是          |
| enable_fast_query_shipping        | 否           |
| enable_force_vector_engine        | 否             |
| enable_hashagg                     | 是          |
| enable_hashfilter                | 否          |
| enable_hashjoin                   | 是           |
| enable_index_nestloop             | 是           |
| enable_indexonlyscan              | 是          |
| enable_indexscan                  | 是             |
| enable_join_pseudoconst            | 是          |
| enable_mergejoin                 | 是            |
| enable_mixedagg                   | 否           |
| enable_nestloop                   | 是         |
| enable_nodegroup_debug           | 否           |
| enable_partition_dynamic_pruning | 是         |
| enable_seqscan                    | 是            |
| enable_sonic_hashagg             | 否          |
| enable_sonic_hashjoin             | 是          |
| enable_sort                      | 是           |
| enable_stream_ctescan              | 否           |
| enable_tidscan                     | 是          |
| enable_value_redistribute          | 是          |
| enable_vector_engine              | 否          |
| expected_computing_nodegroup       | 否           |
| force_bitmapand                  | 是          |
| from_collapse_limit              | 是          |
| join_collapse_limit             | 是           |
| join_num_distinct                  | 是            |
| outer_join_max_rows_multipler      | 是           |
| prefer_hashjoin_path               | 否           |
| qrw_inlist2join_optmode            | 是           |
| qual_num_distinct                 | 是           |
| query_dop                        | 否            |
| query_max_mem                    | 否          |
| query_mem                         | 否          |
| rewrite_rule                       | 否         |
| setop_optmode                     | 是            |
| skew_option                       | 是            |
| stream_ctescan_max_estimate_mem   | 否             |
| stream_ctescan_pred_threshold       | 否           |
| stream_ctescan_refcount_threshold | 否            |
| windowagg_pushdown_enhancement  | 否            |
| index_selectivity_cost              | 是            |
| index_cost_limit                 | 是              |
   
#### 示例
对[示例](https://support.huaweicloud.com/devg-911-dws/dws_04_0455.html#ZH-CN_TOPIC_0000002202140641__zh-cn_topic_0000001658028034_section671421102912)中原语句使用如下hint：
```
explain
select /*+ set global(query_dop 0) */ i_product_name product_name
...
```
该hint表示：在整个语句的计划生成过程中，将配置参数query_dop设置为0，即打开SMP自适应功能。生成的计划如下图所示：
![](https://support.huaweicloud.com/devg-911-dws/figure/zh-cn_image_0000002202095401.png "点击放大")
