SELECT ROUND(123.4567, 2)` gives me `123.4600`
Но мне нужно 123.46
.
Тип данных поля - деньги.
Решение:
<%# DataBinder.Eval(Container.DataItem, "FieldName","{0:0.00}") %>
SELECT ROUND(123.4567, 2)` gives me `123.4600`
Но мне нужно 123.46
.
Тип данных поля - деньги.
Решение:
<%# DataBinder.Eval(Container.DataItem, "FieldName","{0:0.00}") %>
Если применимо, форматируйте на уровне представления, а не на уровне данных, то есть прочитайте все данные и усеките их позже (например, в клиенте C #).
<%#DataBinder.Eval(Container.DataItem, "FieldName","{0:0.00}")%>
. Спасибо, что посоветовал мне решить настоящую проблему.
- person IsmailS; 18.08.2010
SELECT CAST(ROUND(123.4567, 2) AS MONEY)
Буду делать то, что вам нужно
@IsmailS - Для меня более широкая картина заключается в том, чтобы позволить серверу данных форматировать как можно больше, особенно когда это что-то столь же простое, как встроенное приведение. Это дает меньше беспорядка в вашем другом коде. Например, приведение Цена к денежному полю:
select CAST(Price as numeric(17,2)) Price from PriceTable
YMMV - Это мой личный опыт.
SELECT ROUND(123.4567, 2,1)
См. http://msdn.microsoft.com/en-us/library/ms175003(SQL.90).aspx
SELECT FORMAT(123.4567,'N2')
Это поможет вам