Mysql 如何获取BigQuery中的最新行

Mysql 如何获取BigQuery中的最新行,mysql,sql,google-bigquery,Mysql,Sql,Google Bigquery,在BigQuery中,如何根据timestamp字段的最新值获取行 例如,我有这张桌子 名字 姓 使用自动 登录 詹姆斯 戴维斯 真的 2021-05-13 02:00:00 UTC 詹姆斯 摩尔 真的 2021-05-13 02:00:01 UTC 詹姆斯 绿色 真的 2021-05-13 02:00:02 UTC 爱德华 绿色 假的 2021-05-13 03:00:00 UTC 爱德华 威尔逊 假的 2021-05-13 03:00:01 UTC 詹姆斯 戴维斯 假的 2021-05-13

在BigQuery中,如何根据timestamp字段的最新值获取行

例如,我有这张桌子

名字 姓 使用自动 登录 詹姆斯 戴维斯 真的 2021-05-13 02:00:00 UTC 詹姆斯 摩尔 真的 2021-05-13 02:00:01 UTC 詹姆斯 绿色 真的 2021-05-13 02:00:02 UTC 爱德华 绿色 假的 2021-05-13 03:00:00 UTC 爱德华 威尔逊 假的 2021-05-13 03:00:01 UTC 詹姆斯 戴维斯 假的 2021-05-13 03:00:00 UTC 詹姆斯 摩尔 假的 2021-05-13 03:00:01 UTC 詹姆斯 绿色 假的 2021-05-13 03:00:02 UTC 爱德华 绿色 真的 2021-05-13 02:00:00 UTC 爱德华 威尔逊 真的 2021-05-13 02:00:00 UTC
跟进Gordon的答案:添加
限制1
,以减少内存消耗并提高可扩展性:

select array_agg(t order by login_at desc limit 1)[ordinal(1)].*
from thistable t
group by t.first_name, t.last_name;

BigQuery中的一种方便方法是使用聚合:

select array_agg(t order by login_at desc)[ordinal(1)].*
from thistable t
group by first_name, last_name;

我的问题遗漏了一些东西。我编辑了表格。“使用自动”字段可以不同。你能让我知道这个问题吗?更新,跟进戈登的答案。