mysql可以使用nevicat导出insert语句用于数据构造,但是hive无法直接导出insert语句。我们可以先打印在hive命令行,然后使用脚本拼装成insert语句,进行数据构造。

手动copy到python脚本进行sql语句构造:
def transformString(s):
list_s = s.split('\t')
print(len(list_s))
s_new = ''
for item in list_s:
s_new += '\"' + item.strip(' ') + '\"' + ','
return str(s_new.rstrip(','))
# 为手动copy hive命令行打印输出的记录
s = "555 helloworld"
s_new = transformString(s)
sql = 'insert into dw.test PARTITION (ymd = \'2019-03-18\') values({});'.format(s_new)
print(sql)
结果:
insert into dw.test PARTITION (ymd = '2019-03-18') values("555","helloworld");

博客指出MySQL可用Nevicat导出Insert语句进行数据构造,但Hive无法直接导出。可先在Hive命令行打印,再用脚本拼装成Insert语句。还可手动复制到Python脚本进行SQL语句构造。

562

被折叠的 条评论
为什么被折叠?



