ceacer 2 已发布 2月3号 分享 已发布 2月3号 在 Spark SQL 中,您可以使用 orderBy 或 sort_by 函数对 DataFrame 进行排序 首先,我们需要创建一个 DataFrame。以下是一个简单的示例: from pyspark.sql import SparkSession from pyspark.sql.functions import col spark = SparkSession.builder \ .appName("Spark SQL SortBy Example") \ .getOrCreate() data = [("Alice", 34), ("Bob", 45), ("Cathy", 29), ("David", 31)] columns = ["Name", "Age"] df = spark.createDataFrame(data, columns) df.show() 这将创建一个如下所示的 DataFrame: +-----+---+ | Name|Age| +-----+---+ |Alice| 34| | Bob| 45| |Cathy| 29| |David| 31| +-----+---+ 现在,我们将使用 orderBy 和 sort_by 函数对 DataFrame 进行排序。 使用 orderBy 函数: sorted_df = df.orderBy(col("Age").desc()) sorted_df.show() 这将按年龄降序排列 DataFrame: +-----+---+ | Name|Age| +-----+---+ | Bob| 45| |David| 31| |Alice| 34| |Cathy| 29| +-----+---+ 使用 sort_by 函数: from pyspark.sql.functions import desc sorted_df = df.sort_by(desc("Age")) sorted_df.show() 这也将按年龄降序排列 DataFrame: +-----+---+ | Name|Age| +-----+---+ | Bob| 45| |David| 31| |Alice| 34| |Cathy| 29| +-----+---+ 注意:orderBy 和 sort_by 函数在功能上相似,但它们之间存在一些差异。orderBy 是针对单个列进行排序,而 sort_by 可以针对多个列进行排序。此外,sort_by 允许您使用复杂的表达式进行排序,而 orderBy 只支持简单的列引用。 评论链接 在其他网站上分享 更多分享选项...
推荐帖
创建账户或登录以发表评论
您需要成为会员才能发表评论
创建一个帐户
在我们的社区注册一个新账户。很简单!
注册新账户登入
已有账户?在此登录
立即登录