我有一个sql查询,用于为表单中的表生成信息。我要按行动安排信息。我有从1到30的操作编号,但是当我在表中查看它们时,它命令它们所有的操作从一个开始,然后是两个。我知道这是因为这个字段是一个文本字段,但是有没有方法对它们进行数字排序?
最佳答案
首选方法是创建一个integerSortOrder
列,按所需的顺序和顺序填充值1到n。
否则,您将需要根据右填充到最大项目长度的Operation
列按计算列排序。
尝试以下方法:
SELECT Operation, Element, Time
FROM YourTable
ORDER BY CInt(Operation) ASC
[注意:
CInt()
如果数字中存在句点,则不会按预期方式工作。CINT(8.6)将凑到9!]