数据湖计算 DLC INSERT STATEMENT

插入一条新行记录到一个表中。如果指定了列名列表,则它们必须与查询生成的列名列表完全匹配。表中不在列名列表中的每一列都将填充一个空值。如果未指定列名列表,则查询生成的列必须与插入的表中的列完全匹配。

相关产品
数据湖计算 DLC 产品页,含版本规格、价格与购买入口。

一、语法

·Presto:

INSERT INTO table_name [ ( column [, … ] ) ] query

·Spark:

INSERT INTO table_identifier [ partition_spec ] [ ( column_list ) ] { VALUES ( { value | NULL } [ , … ] ) [ , ( … ) ] | query }

二、参数

·[ partition_spec ]:分区列和值。例如 dt='2021-06-01'。

·[ ( column [, … ] ) ]:列的所有。

·[table_name] | table_identifier:表名。

·[query]:一个通用 Select 查询语句。

三、示例

Presto 和 Spark 通用插入示例:

INSERT INTO orders SELECT * FROM new_orders;

INSERT INTO cities VALUES (1, 'China');

INSERT INTO nation (nationkey, name, regionkey, comment)VALUES (26, 'POLAND', 3, 'no comment');

Spark 样例:n插入分区使用一个 select 查询:

INSERT INTO students PARTITION (student_id = 444444) SELECT name, address FROM persons WHERE name = 'dlc'

插入分区:

INSERT INTO students PARTITION (student_id = 11215017) (address, name) VALUES ('Shen zhen, China', 'tester')

四、限制

Presto 不支持插入分区的操作,如果需要插入分区的话可以采用 spark 引擎执行。

赞 (0)
上一篇 4天前
下一篇 4天前