This must be simple but it's got me stumped in BQ
Simple log file:
mysql> select * from wow;
+------+---------------+------------+
| id | string | epoch |
+------+---------------+------------+
| id3 | a new user | 1400783480 |
| id1 | a log event 1 | 1400783492 |
| id1 | a log event 2 | 1400783499 |
| id1 | a log event 3 | 1400783503 |
| id2 | a log event 1 | 1400783510 |
| id2 | a log event 2 | 1400783516 |
+------+---------------+------------+
I want to do the equivalent in BQ to find the last event for each Id:
mysql> select * from (select * from wow as B order by epoch desc) as A group by id;
+------+---------------+------------+
| id | string | epoch |
+------+---------------+------------+
| id1 | a log event 3 | 1400783503 |
| id2 | a log event 2 | 1400783516 |
| id3 | a new user | 1400783480 |
+------+---------------+------------+
3 rows in set (0.00 sec)
Any tips/helps much appreciated.