我有一个sql查询,用于为表单中的表生成信息。我要按行动安排信息。我有从1到30的操作编号,但是当我在表中查看它们时,它命令它们所有的操作从一个开始,然后是两个。我知道这是因为这个字段是一个文本字段,但是有没有方法对它们进行数字排序?

最佳答案

首选方法是创建一个integerSortOrder列,按所需的顺序和顺序填充值1到n。
否则,您将需要根据右填充到最大项目长度的Operation列按计算列排序。
尝试以下方法:

SELECT Operation, Element, Time
FROM YourTable
ORDER BY CInt(Operation) ASC

[注意:CInt()如果数字中存在句点,则不会按预期方式工作。CINT(8.6)将凑到9!]

08-25 22:23