将MySQL中的unicode字符从最少的字符数排序到最多的字符数?

时间:2016-12-27 14:35:09

标签: mysql database database-design unicode

我有一个包含数千行的MySQL数据库。假设每行只有一列,每个单元包含一个Unicode字(即中文字)。如何对记录进行排序,以便结果集首先返回首字母数最少的单词?

例如: 如果我有AA,BB,CCC,D,EEEE,那么我希望结果集按如下方式排序:D,AA,BB,CCC,EEEE

谢谢。

2 个答案:

答案 0 :(得分:2)

您可以使用char_length(your_column)作为unicode字符将占用多个字节。

select * from table 
order by char_length(col), col;

答案 1 :(得分:0)

按照列的长度排序,然后按列自行排序:

SELECT *
FROM YourTable
ORDER BY length(YourCol),
         YourCol