gpt4 book ai didi

sql-server - 根据第 3 列值计算 2 列

转载 作者:行者123 更新时间:2023-12-01 20:16:24 27 4
gpt4 key购买 nike

您好,我正在尝试根据第 3 列中的内容来计算 2 列值。

下面的代码出现错误,将数据类型 varchar 转换为数字时出错。

我相信它正在尝试将货币列设置为新值而不是测试。

任何人都可以帮助我解决我的语法问题吗?

谢谢。

SELECT  dbo.ORDR.DocTotal,
dbo.ORDR.DocTotalFC,
test = case


when dbo.RDR1.Currency = 'GBP' then dbo.ORDR.DocTotal - dbo.ORDR.VatSum
when dbo.RDR1.Currency = 'USD' then dbo.ORDR.DocTotalFC - dbo.ORDR.VatSumFC
when dbo.RDR1.Currency = 'EUR' then dbo.ORDR.DocTotalFC - dbo.ORDR.VatSumFC

else 'other'
end


FROM dbo.RDR1 INNER JOIN
dbo.ORDR ON dbo.RDR1.DocEntry = dbo.ORDR.DocEntry

最佳答案

case表达式else部分的问题

else 'other'

由于您的 case 表达式在其他情况下返回某种整数类型的值,但在其他情况下您返回的字符串值与以前的值不兼容。尝试用一些整数值作为默认值替换 else 条件

关于sql-server - 根据第 3 列值计算 2 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43371032/

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