Jun*_*man 4 sql varchar decimal comma
我在数据库中有一个列;
new_profittl
------------
45,1000
84,0400
156,6500
169,1800
...
Run Code Online (Sandbox Code Playgroud)
我的代码;
SELECT SUM(CAST(new_profittl as DECIMAL(18,2)))
FROM new_hotelreservation AS R
WHERE DATEADD(hour, DATEDIFF(hour, getUTCdate(), GETDATE()),R.new_salesdate)
BETWEEN @bas AND @bit AND R.statecode=0
Run Code Online (Sandbox Code Playgroud)
我必须总结这个领域.该字段是NVARCHAR并用逗号分隔,而不是点.所以我无法总结这个领域.我试图转换或转换为十进制,但它没有.它给出了错误'将数据类型nvarchar转换为数字时出错.'.
我怎么能总结这个领域?
在短期内,这应该做的伎俩:
sum(cast(replace(new_profitt1, ',', '.') as decimal(18,2)))
Run Code Online (Sandbox Code Playgroud)
但是,我可以看到任何数量的复杂性(多个逗号,没有逗号,嵌入空格等等),所以请密切关注它.
| 归档时间: |
|
| 查看次数: |
10634 次 |
| 最近记录: |