SQL(服务器)将 varchar 转换为 float 时出错。文字+金额
SQL (Server) error converting varchar to float. Text + amount
此代码运行良好且输出良好
代码:
select (sum(SchemeAccount.AdoptionAmount)- convert(varchar,Scheme.Acquisition,103)) [£ Output]
输出:
我现在希望在金额前加上 'Variance'
所以我尝试:
select 'variance'+ (sum(SchemeAccount.AdoptionAmount)- convert(varchar,Scheme.Acquisition,103)) [£ Output]
然后得到:
Msg 8114, Level 16, State 5, Line 1
Error converting data type varchar to float.
我想要的是'Variance £73,102,500'或者至少'Variance 73102500'
我尝试了很多 CAST 和 convert(varchar,col,103) 函数,要么没有成功,要么得到了 'Variance 73e105' 或类似的东西。
如果需要有关我当前数据类型的更多信息,我可以尝试确定。
使用concat()
。我假设你打算:
select concat('variance',
convert(decimal(20, 4), sum(SchemeAccount.AdoptionAmount)),
'-',
convert(varchar(255), Scheme.Acquisition, 103)
) as [£ Output]
此代码运行良好且输出良好
代码:
select (sum(SchemeAccount.AdoptionAmount)- convert(varchar,Scheme.Acquisition,103)) [£ Output]
输出:
我现在希望在金额前加上 'Variance'
所以我尝试:
select 'variance'+ (sum(SchemeAccount.AdoptionAmount)- convert(varchar,Scheme.Acquisition,103)) [£ Output]
然后得到:
Msg 8114, Level 16, State 5, Line 1
Error converting data type varchar to float.
我想要的是'Variance £73,102,500'或者至少'Variance 73102500'
我尝试了很多 CAST 和 convert(varchar,col,103) 函数,要么没有成功,要么得到了 'Variance 73e105' 或类似的东西。
如果需要有关我当前数据类型的更多信息,我可以尝试确定。
使用concat()
。我假设你打算:
select concat('variance',
convert(decimal(20, 4), sum(SchemeAccount.AdoptionAmount)),
'-',
convert(varchar(255), Scheme.Acquisition, 103)
) as [£ Output]