Ниже для BigQuery Standard SQL
#standardSQL
SELECT AS VALUE ARRAY_AGG(t ORDER BY timedate DESC LIMIT 1)[OFFSET(0)]
FROM `project.dataset.table` t
GROUP BY id
Вы можете протестировать, играть выше с фиктивными данными, как показано ниже
#standardSQL
WITH `project.dataset.table` AS (
SELECT 1 id, 2 timedate, 3 z UNION ALL
SELECT 1,4,5 UNION ALL
SELECT 1,6,7 UNION ALL
SELECT 2,8,9 UNION ALL
SELECT 2, 10, 11
)
SELECT AS VALUE ARRAY_AGG(t ORDER BY timedate DESC LIMIT 1)[OFFSET(0)]
FROM `project.dataset.table` t
GROUP BY id
результат равен
Row id timedate z
1 1 6 7
2 2 10 11