蜂巢/黑斑羚-插入的十进制显示为null

时间:2019-05-07 12:21:47

标签: impala cloudera-cdh

我以

的形式创建了表格
create table test ( x decimal(5,2)) 

然后我尝试插入一个值

insert into test values ( cast( 1000.2  as decimal(5,2) ) );
insert into test values ( cast('2000.3' as decimal(5,2) ) );
insert into test values ( cast('3000,4' as decimal(5,2) ) );

,但最后select * from test;返回3x NULL值。

我做错了什么?我不敢相信上述任何声明都不起作用。

我在最新的Cloudera quickstart VM上使用了impala

1 个答案:

答案 0 :(得分:1)

精度是数字中的位数。小数位数是数字中小数点右边的位数。例如,数字123.45的精度为5,小数位数为2

select cast(1000.2 as decimal(5,1)) as a, 
       cast(1000.2 as decimal(5,2)) as b,
       cast(1000.2 as decimal(6,2)) as c

会给你

a   1000.2
b   NULL
c   1000.2