- 应用开发
- Table API & SQL
- SQL
- INSERT 语句
INSERT 语句
本文档是 Apache Flink 的旧版本。建议访问 最新的稳定版本。
INSERT 语句用来向表中添加行。
执行 INSERT 语句
单条 INSERT 语句,可以使用 TableEnvironment
中的 executeSql()
方法执行。executeSql()
方法执行 INSERT 语句时会立即提交一个 Flink 作业,并且返回一个 TableResult 对象,通过该对象可以获取 JobClient 方便的操作提交的作业。
多条 INSERT 语句,使用 TableEnvironment
中的 createStatementSet
创建一个 StatementSet
对象,然后使用 StatementSet
中的 addInsertSql()
方法添加多条 INSERT 语句,最后通过 StatementSet
中的 execute()
方法来执行。
以下的例子展示了如何在 TableEnvironment
中执行一条 INSERT 语句,或者通过 StatementSet
执行多条 INSERT 语句。
单条 INSERT 语句,可以使用 TableEnvironment
中的 execute_sql()
方法执行。execute_sql()
方法执行 INSERT 语句时会立即提交一个 Flink 作业,并且返回一个 TableResult 对象,通过该对象可以获取 JobClient 方便的操作提交的作业。
多条 INSERT 语句,使用 TableEnvironment
中的 create_statement_set
创建一个 StatementSet
对象,然后使用 StatementSet
中的 add_insert_sql()
方法添加多条 INSERT 语句,最后通过 StatementSet
中的 execute()
方法来执行。
以下的例子展示了如何在 TableEnvironment
中执行一条 INSERT 语句,或者通过 StatementSet
执行多条 INSERT 语句。
可以在 SQL CLI 中执行 INSERT 语句
以下的例子展示了如何在 SQL CLI 中执行一条 INSERT 语句。
Back to top
将 SELECT 查询数据插入表中
通过 INSERT 语句,可以将查询的结果插入到表中,
语法
OVERWRITE
INSERT OVERWRITE
将会覆盖表中或分区中的任何已存在的数据。否则,新数据会追加到表中或分区中。
PARTITION
PARTITION
语句应该包含需要插入的静态分区列与值。
示例
将值插入表中
通过 INSERT 语句,也可以直接将值插入到表中,
语法
OVERWRITE
INSERT OVERWRITE
将会覆盖表中的任何已存在的数据。否则,新数据会追加到表中。
示例
Back to top