使用标准时,在使用MySQL进行订购时遇到了一些麻烦
ORDER BY c DESC
它是这样订购的:
3
21
20
2
我希望它是这样的:
21
20
3
2
有什么办法可以在不将一位数字前加0的情况下执行此操作?
最佳答案
将您的列从字符串(VARCHAR,TEXT等)更改为数字列(DOUBLE,INT等)。字符串将按字母顺序排序,并且3在2之后。
或者,可以对其进行强制转换,但这将处理添加到查询中:
ORDER BY CAST(c AS INTEGER) DESC
关于php - 订购具有不同位数的MySQL数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8452590/