2015-04-14 40 views
0

我有一个查询,我必须使用convert函数返回单位价格作为小数点,小数点右边有2位数字,数字左边有$。

例如:10应该是$ 10.00

谁能告诉我,我如何将$?

这是我到目前为止的代码

SELECT CONVERT(varchar, UnitPrice, 1) AS varchartotal 
FROM dbo.[Order Details] 
+0

你有sqlfiddle我们使用/测试反对?我确信我可以做出一个....来测试。 – Fallenreaper

+2

这种类型的东西应该可能在UI中完成。无论你在哪里展示这些数据,都有一种方法可以将价值格式化为货币? –

+0

(为什么)它必须是SQL? –

回答

2

这种类型的东西应该始终可以在UI完成。当然,无论您在何处展示这些数据,都有一种方法可以将价值格式化为货币和特定文化(当您需要显示欧元或日元或使用不同符号的东西时会发生什么?)。

也就是说,这是一个简单的字符串连接就可以解决一个问题:

SELECT '$' + CONVERT(varchar, UnitPrice, 1) AS varchartotal 
FROM dbo.[Order Details] 

注:我不同意这一点在生产环境中不断被使用。

编辑:不管你是指MySQL还是SQL Server,都存在一些混淆。如果你使用MySQL,你不能用CONVERT在这里,但你可以强制转换为CHAR,而不是:

SELECT CONCAT('$', CAST(UnitPrice AS CHAR(20))) AS varchartotal 
FROM dbo.[Order Details] 
+0

你确定你可以在'mySQL'中转换成'varchar'? –

+0

@SaagarEliasJacky:我没有看到这被标记为MySQL。这里的'CONVERT'函数看起来很像T-SQL。 –

+0

只是问作为问题被标记为'mysql' –

相关问题