我正在尝试使用PySpark获得最昂贵的产品。我基本上必须将此查询从SQL转换为pyspark:
%sql
SELECT product, item_price as price
FROM lotstemp
ORDER BY item_price DESC
LIMIT 1
有人可以帮助我在PySpark中编写此查询吗?
答案 0 :(得分:0)
您可以通过将数据帧注册为临时表(例如)来直接在spark中运行sql
df.createOrReplaceTempTable('lotstemp')
df=spark.sql('SELECT product, item_price as price FROM lotstemp ORDER BY item_price DESC LIMIT 1')
或者如果您想使用数据框API,则可以通过以下方式进行:
df1 = df.orderBy(f.desc('State')).limit(1)
希望有帮助。