我正在更新一个报告工具实现,以便它查询 BigQuery 而不是 PostgreSQL。PostgreSQL 数据在 BigQuery 中提取。一项要求是报告结果在此更新后保持完全相同,即报告查询在 BigQuery 上运行时应输出与在 PostgreSQL 上完全相同的结果。
特别是,我需要 BigQuery 以与我的 PostgreSQL 服务器当前相同的方式对字符串进行排序。不能更改我的 PostgreSQL 服务器对字符串的排序方式。
例如,使用此表:
姓名 | ID |
---|---|
活动 | 1 |
活动 | 2 |
活动 | 3 |
富 | 4 |
和查询
SELECT name FROM table ORDER BY name, id
我的 PostgreSQL 返回
活动, 活动, 活动, foo
而 BigQuery 返回
活动,活动,活动,foo
我试过了
SELECT name FROM table ORDER BY NORMALIZE_AND_CASEFOLD(name), id
但 BigQuery 会返回
活动, 活动, 活动, foo