0

我正在为我的工作修改访问应用程序。我正在生成一个报告,其中包含由整数 1-11 表示的类别。这些类别的每个小节都是一个小数,例如 1.01、1.02、1.03 等。当我生成报告时,从 1 到 9 的每个小节都是按升序排列的,即 1.01 到 1.11 是按顺序排列的。当它到达 10 和 11 时,类别不按顺序排列,即 10.01、10.04、10.03、10.02 等。当我将每个小节的值更改为 10.1、10.2 等 3 位数字时,它们被排序正确的顺序。当小数点的任何一侧有 4 位或更多位时,它似乎会破坏排序。我一般不太熟悉 access 或 sql,所以除了将 10 和 11 的值编辑为 3 位之外,我不确定如何解决这个问题。小节的数字存储在文本字段类型中。我已将其更改为数字和货币,这两者都没有导致排序发生变化。有谁知道为什么会这样?如果我遗漏了任何重要信息,我深表歉意。如果我可以提供任何其他详细信息,请告诉我。

4

1 回答 1

0

当您将数字存储为字符串并想要对它们进行排序时,可以使用以下技巧:

order by len(category), category
于 2013-05-17T17:14:10.447 回答