Sql 尝试转换货币类型时缺少表达式错误
我想将我表格中的总价输出分别显示为美元20.00美元或欧元40美元。 我厌倦了下面的代码,得到了缺少的表达式错误。 如何将其转换为指定格式? “价格”列的数据类型为数字。 我的代码在这里Sql 尝试转换货币类型时缺少表达式错误,sql,Sql,我想将我表格中的总价输出分别显示为美元20.00美元或欧元40美元。 我厌倦了下面的代码,得到了缺少的表达式错误。 如何将其转换为指定格式? “价格”列的数据类型为数字。 我的代码在这里 select convert(varchar(50),convert(money, coalesce(sum(nvl(CASE WHEN (typ=27 and l.tyt ='USD') THEN 'USD' + PRICE WHEN (typ=27 and l.tyt='EURO') THE
select convert(varchar(50),convert(money, coalesce(sum(nvl(CASE
WHEN (typ=27 and l.tyt ='USD') THEN 'USD' + PRICE
WHEN (typ=27 and l.tyt='EURO') THEN 'EURO'+ PRICE
END,0)),0)),1) as Total from transactions;
提前谢谢 这个表达式有几个地方不对劲。1) 将字符串值('USD'/'EURO')添加到数值(价格),2)不同数据类型上的NVL(),3)字符串数据上的SUM()。其中任何一个都可能是错误的原因 如果表中存储了不同计价的价格,则无法将它们相加到行中-您希望结果中包含哪一个(欧元或美元)。如果您希望将这两行都放在两行中,那么以下选项应该可以使用(请注意,在原始语句中,别名l未定义,因此不太可能使用): 或者干脆
SELECT tyt, Sum(price) as Total
FROM transactions
WHERE typ=27
GROUP BY tyt
这个表达有几个地方不对劲。1) 将字符串值('USD'/'EURO')添加到数值(价格),2)不同数据类型上的NVL(),3)字符串数据上的SUM()。其中任何一个都可能是错误的原因 如果表中存储了不同计价的价格,则无法将它们相加到行中-您希望结果中包含哪一个(欧元或美元)。如果您希望将这两行都放在两行中,那么以下选项应该可以使用(请注意,在原始语句中,别名l未定义,因此不太可能使用): 或者干脆
SELECT tyt, Sum(price) as Total
FROM transactions
WHERE typ=27
GROUP BY tyt