小编Pet*_*gel的帖子

BigQuery:从 Group By 中的不同组返回第一个值

我目前在使用标准 SQL 查询时遇到问题。我有一个电子邮件列表,其中每封电子邮件都可以具有多种功能。请参阅下面的示例,了解表格的外观。

Email                         Function
peter@gmail.com               engineer
peter@gmail.com               specialist
dave@gmail.com                analyst
dave@gmail.com                tester
dave@gmail.com                manager
michael@gmail.com             intern
Run Code Online (Sandbox Code Playgroud)

我想要的是一个查询,它使用它找到的第一个函数返回每封电子邮件一次。所以上表应该返回以下内容:

Email                         Function
peter@gmail.com               engineer
dave@gmail.com                analyst
michael@gmail.com             intern
Run Code Online (Sandbox Code Playgroud)

我该怎么做呢?

我现在拥有的是查询的简化版本。

SELECT Email, Function
FROM database
GROUP BY Email, Function
Run Code Online (Sandbox Code Playgroud)

问题是我必须将电子邮件和函数都放在 GROUP BY 中。如果我只将 Email 放在 Group By 中,即使我只希望查询 GROUP BY Email,查询也无法运行。

谢谢!

sql standards google-bigquery

5
推荐指数
3
解决办法
6683
查看次数

标签 统计

google-bigquery ×1

sql ×1

standards ×1