SQL Server 中的 Money 数据类型仅获取两位小数

发布于 2024-09-15 00:17:25 字数 258 浏览 10 评论 0原文

SELECT ROUND(123.4567, 2)` gives me `123.4600`

但我需要123.46

字段的数据类型是money。

解决方案:

<%# DataBinder.Eval(Container.DataItem, "FieldName","{0:0.00}") %>
SELECT ROUND(123.4567, 2)` gives me `123.4600`

But I need 123.46.

Data type of field is money.

Solution:

<%# DataBinder.Eval(Container.DataItem, "FieldName","{0:0.00}") %>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

最舍不得你 2024-09-22 00:17:25
SELECT CAST(ROUND(123.4567, 2) AS MONEY)

会做你想做的事

SELECT CAST(ROUND(123.4567, 2) AS MONEY)

Will do what you are after

一腔孤↑勇 2024-09-22 00:17:25

如果适用,在视图层而不是数据层进行格式化,即读取所有数据并稍后截断(例如在 C# 客户端中)

If applicable, format on the view layer, not on the data layer, i.e. read all the data and truncate it later (such as in C# client)

不离久伴 2024-09-22 00:17:25

@IsmailS - 对我来说,更大的图景是让数据服务器尽可能格式化,特别是当它像内联转换一样简单时。它可以减少其他代码中的混乱。例如,转换价格,一个货币字段:

select CAST(Price as numeric(17,2)) Price from PriceTable

YMMV - It's my个人经历。

@IsmailS - To me, the larger picture is to let the data server format as much as possible, especially when it's something as simple as an inline cast. It yields less clutter in your other code. For example, casting Price, a money field:

select CAST(Price as numeric(17,2)) Price from PriceTable

YMMV - It's my personal experience.

檐上三寸雪 2024-09-22 00:17:25
SELECT FORMAT(123.4567,'N2')

它会帮助你

SELECT FORMAT(123.4567,'N2')

It will Help You Out

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文