Google bigquery 可以计算BigQuery中列的模式吗?

Google bigquery 可以计算BigQuery中列的模式吗?,google-bigquery,Google Bigquery,我正在处理一个查询,以便在BigQuery上的一个表中的几列上执行聚合。对于这个查询的一部分,我希望能够计算两个列的模式,但在查询中找不到一个本机执行此操作的方法。这是可能的,还是我需要在外部脚本中处理查询结果以获得这些结果?//模式是组中出现频率最高的项 SELECT TOP(column, 1) AS mode, COUNT(*) AS freq FROM dataset.table 要跟进Felipe的评论,请参阅下面使用group by的版本 取决于您的用例-仍有一些问题可能需要解决

我正在处理一个查询,以便在BigQuery上的一个表中的几列上执行聚合。对于这个查询的一部分,我希望能够计算两个列的模式,但在查询中找不到一个本机执行此操作的方法。这是可能的,还是我需要在外部脚本中处理查询结果以获得这些结果?

//模式是组中出现频率最高的项

SELECT TOP(column, 1) AS mode, COUNT(*) AS freq
FROM dataset.table

要跟进Felipe的评论,请参阅下面使用group by的版本


取决于您的用例-仍有一些问题可能需要解决,例如tie

请记住TOP()是快速的,但是近似的。为准确的结果分组。谢谢你菲利佩!是的,它在documentationImportant中有明确的说明,因此,您可以使用张贴答案左侧投票下方的勾号标记接受答案。看看为什么它很重要
SELECT column AS mode, COUNT(1) AS freq
FROM dataset.table 
GROUP BY 1
ORDER BY 2 DESC
LIMIT 1