当我在Oracle中使用concat ||
运算符编写SELECT查询以连接十进制数字和字符串时。然后,不显示整数部分为零的值。
但是当我只选择数字时,会显示整数部分。
我的SQL查询结构: -
SELECT
NUMBER_VAL ||
STRING_VAL
FROM MY_TABLE;
对于E.g(仅选择号码): -
SELECT 0.1 FROM DUAL;
我收到结果:0.01
E.g(选择连接的数字和字符串): -
SELECT 0.01 || 'ABCD' FROM DUAL;
我正在获得结果:.01ABCD
期望的结果:0.01ABCD
任何人都可以帮助我如何达到预期的效果。
这是对Rics答案的补充。
NUMBER_VAL的数据类型为NUMBER(9,4)。
这就是为什么我必须使用格式'99990.9999'
答案 0 :(得分:1)
使用to_char函数和相应的number format:
SELECT
to_char(NUMBER_VAL,'0.99') ||
STRING_VAL
FROM MY_TABLE;
答案 1 :(得分:0)
您可以在转换为字符串时指定格式,例如:
SELECT TO_CHAR(0.01, '0.00') || 'ABCD' FROM DUAL;