gpt4 book ai didi

sql - 在 SQL Server 中将字符串转换为货币值

转载 作者:行者123 更新时间:2023-12-02 15:35:09 25 4
gpt4 key购买 nike

是否有一种简单的内置方法可以将“$1,000.00”和“($1,000.00)”格式的 NVARCHAR 分别转换为数值 1000.00 和 -1000.00?

我正在尝试在 SQL Server 或 SSIS 中执行此操作。

转换为 MONEY 会出现错误

"Cannot convert a char value to money. The char value has incorrect syntax.".

当尝试转换负值时,我假设是由于括号所致。

最佳答案

这应该可以解决问题

SELECT   '$1,000.00'
,CAST('$1,000.00' AS MONEY)
,CAST(REPLACE(REPLACE('($1,000.00)', '(', '-'), ')','') AS MONEY)

SQL Fiddle Example

根据 @mellamokb 的建议,如果您使用的是 SQL 2012,则可以使用以下命令:

SELECT PARSE('($1000.00)' AS MONEY)

SQL Fiddle Example

关于sql - 在 SQL Server 中将字符串转换为货币值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10590270/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com