
# 子链接块名的hint
#### 功能描述
指明子链接块的名称。
#### 语法格式
```
blockname ([@block_name] table)
```
#### 注意事项
- block_name hint仅在对应的子链接块提升时才会被上层查询使用。目前支持的子链接提升包括IN子链接提升、EXISTS子链接提升和包含Agg等值相关子链接提升。该hint通常会和前面章节提到的hint联合使用。

- 对于FROM关键字后的子查询，则需要使用子查询的别名进行hint，block_name hint不会被用到。
- 如果子链接中含有多个表，则提升后这些表可与外层表以任意优化顺序连接，hint也不会被用到。
 
#### 参数说明
- **block_name** 表示语句块的block_name，详细说明请参考[block_name](https://support.huaweicloud.com/devg-dws/dws_04_0456.html#ZH-CN_TOPIC_0000002080515442__zh-cn_topic_0000001460722632_li99021444551)。
- **table** 表示为该子链接块hint的别名的名称。
  ![](https://support.huaweicloud.com/devg-dws/public_sys-resources/note_3.0-zh-cn.png)
  表的语法格式如下：
  ```
  [schema.]table[@block_name]
  ```
  表名可以带schema，也可以带所在子查询语句块提升前的block_name。
  子查询语句块在优化器进行优化重写时发生提升，则该block_name会与leading中block_name不同。
  
 
#### 示例
```
explain select /*+nestloop(store_sales tt) */ * from store_sales where ss_item_sk in (select /*+blockname(tt)*/ i_item_sk from item group by 1);
```
该hint表示：子链接的别名为tt，提升后与上层的store_sales表关联时使用nestloop。生成计划如下所示：
![](https://support.huaweicloud.com/devg-dws/figure/zh-cn_image_0000001510523041.png "点击放大")
