【问题标题】:Spark SQL sort string in each row每行中的 Spark SQL 排序字符串
【发布时间】:2021-05-22 09:57:19
【问题描述】:

我有以下数据框:

+-------+
|letters|
+-------+
|  [b,a]|
|[f,c,s]|
|[m,d,l]|
+-------+

我正在尝试按字母顺序对每一行的字母进行排序。最终结果应该是:

+-------+
|letters|
+-------+
|  [a,b]|
|[c,f,s]|
|[d,m,l]|
+-------+

【问题讨论】:

    标签: sql apache-spark sorting pyspark apache-spark-sql


    【解决方案1】:

    如果letters是数组列,可以直接排序:

    from pyspark.sql.functions import sort_array
    
    df2 = df.withColumn("sortedCol", sort_array('letters', False))
    

    【讨论】:

      【解决方案2】:

      如果有人在使用 Microsoft.Spark.Sql 程序集,您可以使用 SortArray 函数来做到这一点。

      这是特定于使用来自 .Net 的 spark 的人。

      您可以在此处找到文档:

      https://docs.microsoft.com/en-us/dotnet/api/microsoft.spark.sql.functions.sortarray?view=spark-dotnet

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-01-13
        • 1970-01-01
        • 1970-01-01
        • 2015-09-11
        • 1970-01-01
        • 2023-04-07
        • 2016-03-07
        • 1970-01-01
        相关资源
        最近更新 更多