这可能是一个简单的问题,但令人惊讶的是,我没有找到适合这里的任何内容。我做了一个查询,其中我将数字格式化为货币。具体来说:
Format((Sum([CombineTables].[Total Extended Price])),'Currency')
现在当我尝试在Access上排序时它会这样做:
$9,994,340.95
$9,200.50
$9.75
$8,000,0000.00
$4,000
$1,000,000,000.00
我想通过SQL对这些进行排序,我认为排序是最简单的方法。你知道如何纠正这个问题,输出仍然需要在货币格式。
提前感谢
看起来像我对待/排序它作为一个字符串,你应该为Sum([CombineTables].[Total Extended Price])
添加另一个'列'并对其进行排序。在查询设计器中,您可以选中/取消选中一个框,以便在输出iirc
好吧,一个选择是order by
原始值:
order by Sum([CombineTables].[Total Extended Price])
如果因为某些原因你不能这样做和所有的东西都有相同的格式,使用这个技巧:
order by len(TotalExtendedPrice), TotalExtendedPrice
(或其他列)。
你可以用这个技巧来处理小数:
order by len(TotalExtendedPrice) - iif(TotalExtendedPrice like '*.*', 3, 0),
TotalExtendedPrice