我有3列varchar,我想按数字和字母顺序进行排序。我想要自然排序(如1、2、3等),但是我也希望像28A这样的排序在28之后但在29之前出现。

28  1
28A 1
28  2
28A 2
28  3
28A 3
29


而不是我想要的

28  1
28  2
28  3
28A 1
28A 2
28A 3
29


感谢对此的任何帮助。

最佳答案

像这样使用ORDER BY

SELECT
 columna, columnb
FROM
  mytable
ORDER BY columna, columnb;

10-05 21:28