我有 3 列 varchar,我想按数字和字母顺序对它们进行排序。我想要自然排序,如 1、2、3 等,但我也希望 28A 之类的出现在 28 之后但在 29 之前。我尝试将其转换为有符号的 asc,这给了我自然排序,但也
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;
关于mysql - varchar 的自然排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22276941/