我在AWS Athena中有一个表,其中包含2条记录。是否存在SQL查询,可以使用该查询将新列插入表中?
答案 0 :(得分:1)
或者您可以使用CTAS
例如,您有一个带有
的表CREATE EXTERNAL TABLE sample_test(
id string)
LOCATION
's3://bucket/path'
,您可以使用查询从sample_test
创建另一个表
CREATE TABLE new_test
AS
SELECT *, 'new' AS new_col FROM sample_test
您可以在AS
之后使用任何可用的查询
答案 1 :(得分:0)
这主要是为像我这样的未来读者而设计的,他们一直在努力使用AVRO数据来为Hive表工作,并且如果您不想创建新表(即更新现有表的架构)。它适用于使用“添加列”的csv,但不适用于Hive + AVRO。对于Hive + AVRO,要在分区列的末尾附加列,此link处提供了解决方案。但是,有两点需要注意,我们需要将完整的模式传递给文字属性,而不仅仅是传递更改。并且(不确定为什么)但是我们必须以相同的顺序更改所有3项的配置单元表-1.使用add columns
2. set tblproperties
和3. set serdeproperties
添加列。希望它能对某人有所帮助。