我怎样才能正确地按阶梯订购?

9wbgstp7  于 2021-06-25  发布在  Mysql
关注(0)|答案(1)|浏览(277)

我有个问题:

SELECT id 
FROM table 
ORDER BY
        column = 'A B C D E F G' DESC,
        column = 'A B C D E F' DESC,
        column = 'A B C D E' DESC,
        column = 'A B C D' DESC,
        column = 'A B C' DESC,
        column = 'A B' DESC,
        column = 'A' DESC
GROUP BY id

我用了阶梯法 ORDER BY 我可能有多个像这样的梯子:

A B C D E F G H I K L M 
A B C D E F G H I K L
A B C D E F G H I K
A B C D E F G H I
A B C D E F G H
A B C D E F G
A B C D E F
A B C D E
A B C D
A B C
A B
A
N O P Q R S T V X Y Z
N O P Q R S T V X Y
N O P Q R S T V X
N O P Q R S T V
N O P Q R S T
N O P Q R S
N O P Q R
N O P Q
N O P
N O
N

有没有更好的办法 ORDER BY 而不是在梯子的每一步都画一条线?我可以做一个 PHP function 来处理这项工作,但这对公司有好处吗 MySQL ?
或者你会如何处理这样一个问题呢?我很担心 Performance .
在sqlfiddle中获得以下结果http://sqlfiddle.com/#!9/9f4c815/4/1

svmlkihl

svmlkihl1#

我想这正是你想要的:

order by substring_index(col, ' ', 1),
         length(col) desc

相关问题