使用python自动递增表列

bkkx9g8r  于 2021-06-26  发布在  Hive
关注(0)|答案(1)|浏览(399)

Hive 我有一张table叫test。在这个表中我想有5列。

ID, start_time, end_time, min_value, max_value.

正在使用 Pyspark 我想填充这个表。
我在python文件中执行以下操作:

start_time='4/5/2017'
end_time='5/4/2017'
min_value='1'
max_value='100'

sqlContext.sql("insert into table testing.test select '{}','{}','{}','{}','{}'".format(id,start_time,end_time,min_value,max_value))

在上面的脚本中,start\u time、end\u time、min\u value、max\u value我将这些值作为脚本的一部分。
现在我想要的是列应该是 Auto incremented 当执行insert语句时,应该有 id 它的附加值。
有没有可能用python实现这一点?如果是,那么
如何对列进行自动增量 ID 在我的剧本里

0ejtzxu1

0ejtzxu11#

您只需创建一个id变量,并在执行insert命令时添加到该变量中,例如:

id = 1 #outside of the loop or function, possibly make it a global variable

# some loop or function#

sqlContext.sql(....)

id = id + 1

如果要多次(很可能)填充该数据库,应该从数据库的最新/最高值获取id变量,这样就不会重复;)

相关问题