试图在pyspark中以编程方式进行简单的计数,但会出现错误。 .count()
如果我放弃的话,它在语句末尾起作用 AS (count(city))
但我需要伯爵出现在里面而不是外面。
result = spark.sql("SELECT city AS (count(city)) AND business_id FROM business WHERE city = 'Reading'")
许多错误之一
Py4JJavaError: An error occurred while calling o24.sql.
: org.apache.spark.sql.catalyst.parser.ParseException:
mismatched input '(' expecting ')'(line 1, pos 21)
== SQL ==
SELECT city AS (count(city)) AND business_id FROM business WHERE city = 'Reading'
---------------------^^^
2条答案
按热度按时间fgw7neuy1#
你的语法不正确。也许你想这样做:
你需要提供一个窗口,如果你使用
count
没有group by
. 在这种情况下,您可能需要每个城市的计数。bcs8qyzn2#
只是我想解决的问题的解决方案。上面的解决方案正是我想要的。