S12*_*000 2 sql apache-spark apache-spark-sql
您好,我将Spark与Python配合使用,我对数据框执行了基本的count(*)查询,如下所示
myquery = sqlContext.sql("SELECT count(*) FROM myDF")
Run Code Online (Sandbox Code Playgroud)
结果是
+--------+
|count(1)|
+--------+
| 3469|
+--------+
Run Code Online (Sandbox Code Playgroud)
如何保存该值以便执行进一步的操作。
例如,将3469除以24 [无论24意味着...]
小智 6
>>> myquery = sqlContext.sql("SELECT count(*) FROM myDF").collect()[0][0]
>>> myquery
3469
Run Code Online (Sandbox Code Playgroud)
这只会让你得到计数。可以在连续查询中转换和使用后面的类型myquery,例如,如果您想在输出中显示整行。
这适用于 pyspark sql。
注意:这会将整行转储到屏幕上。
>>> sqlContext.sql("SELECT * FROM myDF").show(myquery,False)
Run Code Online (Sandbox Code Playgroud)
假设您的查询返回dataframe为
+-----+
|count|
+-----+
|3469 |
+-----+
Run Code Online (Sandbox Code Playgroud)
您需要获取第一行(也是唯一行),然后是其(唯一)字段“ count”
count = dataframe.first()['count']
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10254 次 |
| 最近记录: |