虽然hive中的表没有主键一说,但是实际数据开发中经常需要将hive中计算好的表导出到mysql库中供业务使用或开发调用,而mysql表是需要有主键的,在hive中我们可以使用row_number() over()窗口函数来生成一个自增序列的字段,在将表导出到mysql库中的时候就可以指定该字段为主键,使用起来还是挺方便的。
select -- 自增序列字段 row_number()over() as row_number -- 以下其他字段 , c1 , c2 from edw_tmp.tmp_table_name where dt='${dt}'