我必须使用hive创建一个表。但我想用自动增量列创建该表。
我用谷歌搜索但无法找到确切的答案。 如果有人知道它的语法。请分享。
提前谢谢。答案 0 :(得分:3)
您需要使用UDF(用户定义的函数)。我在此链接中成功使用了UDF http://svn.apache.org/repos/asf/hive/trunk/contrib/src/java/org/apache/hadoop/hive/contrib/udf/UDFRowSequence.java
此外,您可以通过this very helpful tutorial了解如何在配置单元中使用UDF。
答案 1 :(得分:1)
INSERT INTO TEST_INC SELECT
reflect("java.util.UUID", "randomUUID"), test1, test2, test3 from TEST;
例如。
答案 2 :(得分:0)
您必须为此目的编写UDF。看看下面的Jira讨论
https://issues.apache.org/jira/browse/HIVE-1304。
下载以下patch文件并尝试
这仅适用于小输入。由于UDF row_sequence()
用于reducer,因此reducer计数应保持为1以保持自动增量字段不同