我有一个查询,它使用两个子查询的输出(R1,R2)来划分它们:
select a.R1/b.R2*100.0 as Result
from
(query1) a,
(query2) b
除法输出是(十进制)数字以及R1,R2输出。
我想在结果中添加'%'符号(即10,75%),但使用类似下面的解决方案,会返回错误01722 =无效数字
select cast(cast(a.R1/b.R2*100.0 as decimal(10,2)) as varchar(10)) + '%' as Result
from
(query1) a,
(query2) b
答案 0 :(得分:7)
欢迎!
将添加运算符'+'替换为SQL-Pl / sql并置运算符:' || '。
我们不能在数字格式模型中直接使用字符文字 ,就像在日期转换中一样。
示例:
select cast(round(10.75, 2) as varchar(10)) || '%' as result
from dual
select to_char(round(1234567890.29, 2),'9G999G999G999D99' ) || '%' as result
from dual
<强> PS。强> 路线总是一样的:
<强> How to ask 强>