2010-10-22 47 views
1

我正在使用MS SQL 2008开发具有经典ASP的一个系统。SQLServer 2008:在经典ASP中使用Money DataType显示信息

我想显示3个小数位数字类型是金钱。我从http://www.sqlusa.com/bestpractices2005/moneyformat/得到了答案。

我在SQL语句中使用这样的:

 CONVERT(VARCHAR, CAST(Sell_Price AS Decimal(19, 3))) AS Unit_Price 

我想知道的是:是否有更有效的方式(在性能和使用情况)比现在的?如果有,请给我看看。提前致谢!

问候,

RedsDevils

回答

1

就个人而言,我会考虑返回值,是从数据库中未格式化和格式化它在UI显示代替 - 离开格式到前端。毕竟,db不知道使用它返回的数据是什么 - 例如,运行查询的其他东西可能需要返回完整的准确性,这样可以节省多个不同的版本。

+0

感谢您的回复。我忘了提及我的网页是打印和我在那里使用视图,从打印桥形式我只是发送记录Id。然后我从视图中选择。那么如何在HTML中进行格式化?打印表单是简单的HTML。 – RedsDevils 2010-10-22 07:52:30

+1

假设查询是从传统ASP运行的,然后遍历记录集,将数据写入客户端 - 因此在该循环中,您需要在写出该列之前格式化该列中的值。例如(像传统的ASP位生锈!):Response.Write(FormatNumber(rs.Fields(“Unit_Price”),2)) – AdaTheDev 2010-10-22 08:01:23

+0

非常感谢你! – RedsDevils 2010-10-22 08:29:09