繁体   English   中英

SQL将float转换为带小数的逗号varchar

[英]SQL Convert float to comma varchar with decimals

我有几个花车有点大。 他们大约有1亿。

我希望这个数字显示如下123,456,789.01234

我发现如果它是一个货币数据类型,我可以使用CONVERT,但这并不是完整的技巧(它会留下一些小数位)。

我必须在左边有逗号,在右边有五个小数位。

是否有任何内置的SQL函数来帮助解决这个问题? 或者我是否必须编写自定义函数?

谢谢

***更新

  • 我忘了提到我只是将它们显示为varchars。 所以此后没有任何计算。
  • 这是在SQL数据库上运行,因此MySQL和Oracle将无法运行。
DECLARE @f FLOAT

SET @f = 123456789.01234

SELECT  LEFT('$' + CONVERT(VARCHAR(20), CAST(@f AS MONEY), 1), LEN(@f) - 2)

这将把它减少到两位十进制格式。 您可以更改LEN(@f) - 2以修改此设置。

如果您只是将其显示为文本,则可以执行以下操作:

oracle:

select to_char(123456789.01234,'999,999,999.99999') from dual; => 123,456,789.01234

MySQL:

select format(123456789.01234,5) => 123,456,789.01234<br>

MySQL函数回合

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM