【发布时间】:2022-01-23 13:19:51
【问题描述】:
我正在尝试使用 SQL 将 238350.50 之类的数字格式化为“238”。我使用ROUND(number_x, -3) 四舍五入到最近的千位,它工作正常,但我无法摆脱数百位数字。更多关于格式化应该如何工作的例子:
- 499.99 变成 0
- 500变成1
- 1250变成1
- 22500 变成 23
- 231600 变成 232
- 等
你可以把它想象成 "k" 格式 f.e. 10.000 变为“10k”。
感谢您的帮助!
【问题讨论】:
-
标记您正在使用的 DBMS(即
MS SQL、Oracle等)。 -
要获得一个小一千倍的数字,请使用除法运算符:
number_x / 1000。在不同的 SQL 方言中,以非舍入方式去除小数位是不同的,您没有标记,但您可以使用ROUND(number_x / 1000 - 0.5)解决。
标签: sql number-formatting