当我想从一个大表中选择上个月时,我可以这样做:
select * from table where yyyymm=(select max(yyyymm) from table)
这需要永远。但是
hive> show partitions table
只需要一秒钟。有没有可能操纵 show partitions table 转换为文本字符串并执行以下操作:
show partitions table
select * from table where yyyymm=(manipulated 'partition_txt')
k75qkfdt1#
我试过在Hive里做这个,但是做不到,所以我在spark 2.1.1中做了。
val part = spark.sql("SHOW PARTITIONS db.table") // sorts list in reverse and writes to hdfs myDir part.sort(col("partition").desc).write.csv.save("myDir")
1条答案
按热度按时间k75qkfdt1#
我试过在Hive里做这个,但是做不到,所以我在spark 2.1.1中做了。