
# INSERT
#### 命令功能
INSERT命令用于将SELECT查询结果加载到Delta表中。
#### 命令格式
追加模式：
**INSERT INTO** *\[database_name.\]table_name\|* *DELTA.\`obs://bucket_name/tbl_path\`* 
*select query;*
覆盖模式：
**INSERT OVERWRITE** *\[database_name.\]table_name\|* *DELTA.\`obs://bucket_name/tbl_path\`* 
*select query;*
#### 参数描述
表1INSERT INTO参数 
| **参数**        | **描述**                        |
|:---|:---|
| database_name | Database名称，由字母、数字和下划线（_）组成。   |
| table_name    | Database中的表名，由字母、数字和下划线（_）组成。 |
| *bucket_name* | obs桶名称。                       |
| *tbl_path*    | Delta表在obs桶中的存储位置。            |
| select query  | 查询语句。                         |
   
#### 所需权限
- SQL权限
表2INSERT INTO所需权限列表 
| 权限描述                  |
|:---|
| 表的INSERT_INTO_TABLE权限 |
   
- 细粒度权限：dli:table:insertIntoTable
- LakeFormation提供的元数据服务，权限配置详见LakeFormation文档。
 
#### 示例
```
insert into delta_table0 values(1, 'a1', 20);
insert into delta_table0 select 1, 'a1', 20;
insert into test_delta_parts1 PARTITION(dt) select id,name,dt from test_delta1;
-- insert overwrite table
insert overwrite table delta_table0 select 1, 'a1', 20;
```
#### 系统响应
可在执行历史或作业列表中查看任务运行成功或失败。
