您需要将该
money值转换为字符串。目前,您将根据数据类型优先规则反过来进行隐式强制转换(即,尝试这样做,
CAST('USD' ASMONEY)然后将结果添加到总和中,这将是失败的,因为这不是数字)SELECT CAST(IsNull(pe.SalePrice,pe.ProductPrice) AS VARCHAr(30)) + ' USD' AS price

您需要将该
money值转换为字符串。目前,您将根据数据类型优先规则反过来进行隐式强制转换(即,尝试这样做,
CAST('USD' ASMONEY)然后将结果添加到总和中,这将是失败的,因为这不是数字)SELECT CAST(IsNull(pe.SalePrice,pe.ProductPrice) AS VARCHAr(30)) + ' USD' AS price