根据上次更新(createdOn)和按 id 分组的以下数据的 Bigquery 查询输出

Bigquery query output for below data according to last updated(createdOn) and group by id

Bigquery table 记录

[
  {
    "testing": "test",
    "test1_test2_test3": "test1",
    "test4": "test",
    "id": "56e7a237ea7b45950e90ac4c",
    "createdOn": "48172-11-04 03:32:29 UTC"
  },
  {
    "testing": "abc",
    "test1_test2_test3": "bcd",
    "test4": "efg",
    "id": "56e79ee81f4394d70dcc8bec",
    "createdOn": "48172-10-25 08:31:05 UTC"
  },
  {
    "testing": "fgter",
    "test1_test2_test3": "yu67",
    "test4": "testingdata",
    "id": "56e79ee81f4394d70dcc8bec",
    "createdOn": "48172-08-25 08:31:05 UTC"
  },
  {
    "testing": "abc",
    "test1_test2_test3": "bcd",
    "test4": "efg",
    "id": "56e79ee81f4394d70dcc8bec",
    "createdOn": "48172-12-11 11:06:11 UTC"
  },
  {
    "testing": "abcd",
    "test1_test2_test3": "bcde",
    "test4": "abcd",
    "id": "56e7ac9cf287b34510b0a6a9",
    "createdOn": "48172-12-04 23:07:55 UTC"
  }
]

我试过按 Or Top 分组,但没有按以下格式输出

[
  {
    "testing": "test",
    "test1_test2_test3": "test1",
    "test4": "test",
    "id": "56e7a237ea7b45950e90ac4c",
    "createdOn": "48172-11-04 03:32:29 UTC"
  },
   {
    "testing": "abc",
    "test1_test2_test3": "bcd",
    "test4": "efg",
    "id": "56e79ee81f4394d70dcc8bec",
    "createdOn": "48172-12-11 11:06:11 UTC"
  },
  {
    "testing": "abcd",
    "test1_test2_test3": "bcde",
    "test4": "abcd",
    "id": "56e7ac9cf287b34510b0a6a9",
    "createdOn": "48172-12-04 23:07:55 UTC"
  }
]

你是这个意思吗?

select
testing
,test1_test2_test3
,test4
,id
,createdOn

from (
select
testing
,test1_test2_test3
,test4
,id
,createdOn
,row_number() over (partition by id order by createdOn desc) as rank

from table
)

where rank = 1