hive精确数据类型

hive也支持varchar,date,datetime,decaimal等类型,下面对这些类型与关系型数据库的差别进行探索。

```

create table test.type_tab(
    id bigint,
    col1 varchar(10),
    col2 date,
    col3 timestamp,
    col4 decimal(22,6)
);

insert into test.type_tab
select 100,'01234567890','2018-12-31','2018-12-31 12:30:00',2873.99834475755775;   


insert into test.type_tab
select 101,'01234567890123','2018-12-31','2018-12-31 12:30:00',2873.99834475755775;  

 

 

```

查看结果:

```

select * from test.type_tab;

type_tab.id |type_tab.col1 |type_tab.col2 |type_tab.col3       |type_tab.col4 |
------------|--------------|--------------|--------------------|--------------|
100         |0123456789    |2018-12-31    |2018-12-31 12:30:00 |2873.998345   |
101         |0123456789    |2018-12-31    |2018-12-31 12:30:00 |2873.998345   |

```

 

由此可见varchar指定字段长度,当字段超长则被自动截断。decaiml超过精度则财务四舍五入到目标精度。

转载于:https://my.oschina.net/huhaicool/blog/1861859