我是 Pyspark 的新手。我正在尝试使用计数函数的别名。由于某种原因,如果我在
agg
前面使用 count
,则 alias
正在工作,但如果我没有聚合,则 alias
会给我错误。
.(count("firstName").alias("cnt"))
不起作用;
.agg(count("firstName").alias("cnt"))
有效。
我想了解第一个查询的问题。
你可以试试这个:
.count().withColumnRenamed("count","cnt")
我们不能直接为 count 函数添加别名
在 Spark 3.4.0 版本上我们可以做类似的事情
order_items.filter('order_item_order_id = 2').select(count('order_item_quantity').alias('order_item_count'),sum('order_item_quantity').alias('order_quantity'),sum('order_item_subtotal').alias('order_revenue')).show()