google-sheets - QUERY 与 IMPORTRANGE 结合使用会错误地对重音值进行排序

标签 google-sheets google-query-language

如标题中所述,假设我有具有以下值的电子表格:

B
C
A
Š
Ť
Á

然后,我使用 QUERYIMPORTRANGE 将此电子表格中的值导入到不同的电子表格,确切的功能:

=QUERY(IMPORTRANGE("<spreadsheet_id>"; "List 1!A:B"); "SELECT * WHERE Col1!='' ORDER BY Col1";-1)

我得到的结果是这样的:

A
B
C
Á
Š
Ť

因此,ORDER BY 分别作用于非重音字母和重音字母,但不能一起作用,我期望的结果是:

A
Á
B
C    
Š
Ť

这对我来说毫无用处。当我尝试手动排序它们时,数据会扭曲(移动到完全不同的行,排序也不正确。我已经检查过,设置中的语言设置是否正确。

当我用谷歌搜索了一下时,一些链接解决了不同的 SQL(例如 MySQL)COLLATE UNICODE,但这不起作用。

有什么想法吗?

最佳答案

问题在于 query 调用一种完全不同的语言,该语言的行为不一定像 sort 等其他表格函数。由于 sort 可以满足您的要求,因此请在查询中使用它而不是 order by:

=SORT(QUERY(IMPORTRANGE(...); "SELECT * WHERE Col1!=''); 1; True) 

按第一列 (1) 升序 (True) 对查询的输出进行排序。输出是

A
Á
B
C
Š
Ť

关于google-sheets - QUERY 与 IMPORTRANGE 结合使用会错误地对重音值进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46651263/

相关文章:

google-apps-script - 在另存为 pdf 之前,脚本不会等待工作表页面刷新

google-sheets - 使用 FILTER 在 COUNTA 上错误返回 1

google-visualization - 无效查询 : SELECT_WITH_AND_WITHOUT_AGG in Google Query Language

arrays - Google Sheets 查询 - 不像部分匹配

google-analytics - Google Sheets FILTER() 和 QUERY() 无法与 SUM() 一起使用

python - 使用 GSpread 在文件夹中创建电子表格

google-sheets - 删除 Arrayformula 中未使用的单元格

google-sheets - 忽略给定单词的大小写