我正在尝试使用SQL在结果的开头添加$
。使用与此代码行具有相同功能的最佳方法是:
CAST(AVG(e.[myAmount]) AS DECIMAL(10,2)) AS 'Total Amount'
我知道我可以将它转换为VARCHAR
并将其添加到语句的开头,但它会消除我的平均功能。
答案 0 :(得分:7)
SQL Server 2012 +:
使用ActiveRecord_AssociationRelation:
CONCAT('$', CAST(AVG(e.[myAmount]) AS DECIMAL(10,2))) AS 'Total Amount'
SQL Server 2008 +:
注意强>
如果您需要考虑多种货币类型,则可能不希望在查询中执行此操作。获得结果" raw"格式,然后在服务器业务逻辑中进行转换(并在那里附加相应的货币符号)。
答案 1 :(得分:2)
适用于SQL Server 2008 +
的实现<ul>
<li>lorem</li>
<li>ipsum</li>
<li>dolor</li>
<li>sit</li>
<li>amet</li>
<li>consectetur</li>
<li>adipiscing</li>
<li>elit</li>
<li>Vestibulum</li>
<li>porttitor</li>
<li>nisi</li>
<li>purus</li>
<li>eu</li>
<li>pretium</li>
<li>ipsum</li>
<li>ultricies</li>
<li>eu</li>
<li>Nulla</li>
<li>eleifend</li>
<li>arcu</li>
<li>dolor</li>
<li>et</li>
<li>vestibulum</li>
<li>ligula</li>
<li>lacinia</li>
<li>sed</li>
<li>Sed</li>
<li>viverra</li>
<li>tortor</li>
<li>lorem</li>
<li>molestie</li>
<li>volutpat</li>
<li>nisi</li>
<li>volutpat</li>
<li>a</li>
<li>Suspendisse</li>
<li>dolor</li>
<li>lacus</li>
<li>ultrices</li>
</ul>
答案 2 :(得分:0)
你可以cast
向varchar这样的东西:
select '$' + CAST (CAST(AVG([myAmount]) AS DECIMAL(10,2)) as VARCHAR(13)) AS 'Total Amount'
from average_test