gpt4 book ai didi

scala - 对 Spark 数据框/Hive 结果集进行排序

转载 作者:行者123 更新时间:2023-12-02 07:38:05 25 4
gpt4 key购买 nike

我正在尝试从 Hive 表中检索列列表并将结果存储在 Spark 数据框中。

var my_column_list = hiveContext.sql(s""" SHOW COLUMNS IN $my_hive_table""")

但是我无法按字母顺序对数据框甚至显示列查询的结果进行排序。我尝试使用 sort 和 orderBy()。

如何按字母顺序对结果进行排序?

更新:添加了我的代码示例

import org.apache.spark.{ SparkConf, SparkContext }
import org.apache.spark.sql.DataFrame
import org.apache.spark.sql.hive.HiveContext

val hiveContext = new HiveContext(sc)
hiveContext.sql("USE my_test_db")

var lv_column_list = hiveContext.sql(s""" SHOW COLUMNS IN MYTABLE""")
//WARN LazyStruct: Extra bytes detected at the end of the row! Ignoring similar problems

lv_column_list.show //Works fine
lv_column_list.orderBy("result").show //Error arises

最佳答案

SHOW COLUMNS 查询生成一个 Dataframe,其中包含名为 result 的列。如果您按此栏订购,您将得到您想要的:

val df = hiveContext.sql(s""" SHOW COLUMNS IN $my_hive_table """)
df.orderBy("result").show

关于scala - 对 Spark 数据框/Hive 结果集进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40486208/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com