我正在尝试对包含希腊字符的表进行排序。每次单击表格的标题时,相应的英文版本的表格正在被排序(ASC
和DESC
)就好了。
我在希腊论坛上搜索过,建议的唯一解决方案是使用ORDER BY BINARY
. 事实上,很多人说使用二进制顺序解决了他们的问题。不幸的是,我的情况并非如此。我知道在像德语这样的语言中也存在同样的问题,其中使用变音符号会扰乱顺序,并且通常在具有特殊字符的语言中。如果有人知道如何克服这个问题,我将不胜感激。
我正在尝试对包含希腊字符的表进行排序。每次单击表格的标题时,相应的英文版本的表格正在被排序(ASC
和DESC
)就好了。
我在希腊论坛上搜索过,建议的唯一解决方案是使用ORDER BY BINARY
. 事实上,很多人说使用二进制顺序解决了他们的问题。不幸的是,我的情况并非如此。我知道在像德语这样的语言中也存在同样的问题,其中使用变音符号会扰乱顺序,并且通常在具有特殊字符的语言中。如果有人知道如何克服这个问题,我将不胜感激。
根据forums.mysql.com 上的一个帖子,在 MySQL 6.0 中,如果表的字符集设置为 ,则可以对希腊名称进行排序utf8_general_ci
。
create table t (s1 char(1) character set utf8 collate utf8_general_ci);
insert into t values ('Α'),('Β'),('Γ'),('Δ'),('Ε'),('Ζ');
select * from t order by s1;
以上应该返回
+----+
| s1 |
+----+
| Α |
| Β |
| Γ |
| Δ |
| Ε |
| Ζ |
+----+