当我从视图中选择时,前面的零的结果会再次出现,因为
的数字数据类型。我需要没有前导零的结果。
-------CODE----------
create table test_number_type(c1 number);
insert into test_number_type values(100.12);
insert into test_number_type values(0.12);
commit;
create or replace view test_data_type as
select to_number(trim(leading 0 from c1)) c_num_check from test_number_type;
desc test_data_type
答案 0 :(得分:3)
您的担忧完全是错误的。使用内部表示存储数字。它们不存储为字符串。所以,所有这些代表相同的数字(随后有一个警告):
0.12
.12
000000.12
需要注意的是,内部表征在规模和精确度方面可能有所不同。
如何呈现数字并不是真正取决于该列。如果要控制输出,请将值转换为字符串。函数to_char()
允许您控制前导零。