我想在hive中的表中插入一些初始数据,所以我创建了HQL,
INSERT OVERWRITE TABLE table PARTITION(dt='2014-06-26') SELECT 'key_sum' as key, '0' as value;
但它不起作用。
还有另一个类似上面的查询,
INSERT OVERWRITE TABLE table PARTITION(dt='2014-06-26') SELECT 'key_sum' as key, '0' as value FROM table limit 1;
但它也没有用,因为我看到这些表是空的。
如何将初始数据设置到表中? (这就是我必须自我加入的原因)
答案 0 :(得分:1)
关于它应该具有的第一个HQL子句,它缺少所以HQL失败,
INSERT OVERWRITE TABLE table PARTITION(dt='2014-06-26') SELECT 'key_sum' as key, '0' as value;
关于第二个HQL,from table应该至少有一行,所以它可以将常量init值设置到新创建的表中。
INSERT OVERWRITE TABLE table PARTITION(dt='2014-06-26') SELECT 'key_sum', '0' FROM table limit 1;
你可以使用任何有数据的旧蜂巢表,然后点击。
答案 1 :(得分:0)
如果我们已经在hive中创建了测试表,则以下查询可以正常工作。
INSERT OVERWRITE TABLE测试PARTITION(dt ='2014-06-26')SELECT'key_sum'作为键,'0'作为值FROM test;
我认为应首先创建我们执行插入的表。