Hive数据类型

1.hive常用的数据类型包括:

  tinyInt(byte),smallint(short),int,bigint(long),float,double,boolean,string类型。【括号中对应java类型】

补充:对于mysql中的varchar和char类型:若字符串长度小于10建议用char,大于10使用varchar。这是因为对于varchar类型,必须占有一到两个字节来说明它的字符长度。(char寻址快)

2.类型转换

  隐式转换规则:任何整数类型都可以隐式转换为一个范围更广的类型。

    所有整数类型 + float + string都可以转换为double类型。

  可以使用cast操作进行数据类型显示转换。

    例如cast(‘1‘ as int)把字符串‘1‘转换成整数值1,转换失败则表达式返回控制NULL。

3.复杂类型

Create table complex (

Col1 array<int>,

Col2 map<string, int>,

Col3 struct<a:string, b:int, c:double>

);

  将内容为:array (1,2) map(‘a‘,1,‘b‘,2) struct(‘a‘,1,1.0) 的数据文件load到上面的表中。

  执行hive语句:Select Col1[0], Col2[‘b‘],Col3.c from complex;

  返回:1 2 1.0

    • Array类型是通过下标来取值,字段的类型必须相同
    • Map类型是通过key来取值,
    • Struct类型是通过定义时的名称来取值,字段类型可以不同

4.内置函数

  •   与SQL相同的:等值判断 x=‘a‘,空值判断 x is NULL,模式匹配 x like ‘A%‘,算术操作 x+1,逻辑操作 x or y。
  •   其中和SQL-92有点区别的是:||是逻辑或(OR),而不是字符串"连接"。在mysql和hive中字符串连接是concat()函数。
  •   可以使用:show functions获取函数列表。describe function获得某个特定函数的使用帮助。
时间: 2024-10-14 01:10:46

Hive数据类型的相关文章

Hive数据类型及常用操作总结(一)

一.Hive 数据类型 Hive 提供了基本数据类型和复杂数据类型,复杂数据类型是 Java 语言所不具有的. 基本数据类型 Hive是用java开发的,hive里的基本数据类型和java的基本数据类型也是一一对应的,除了string类型.有符号的整数类型:TINYINT.SMALLINT.INT和BIGINT分别等价于java的byte.short.int和long原子类型,它们分别为1字节.2字节.4字节和8字节有符号整数.Hive的浮点数据类型FLOAT和DOUBLE,对应于java的基本

Hive数据类型与文件存储格式

Hive数据类型 基础数据类型: TINYINT,SMALLINT,INT,BIGINT,BOOLEAN,FLOAT,DOUBLE,STRING,BINARY,TIMESTAMP,DECIMAL,CHAR,VARCHAR,DATE. 复杂数据类型: 包括ARRAY,MAP,STRUCT,UNION,这些复杂类型是由基础类型组成的. ARRAY:ARRAY类型是由一系列相同数据类型元素组成的,这些元素可以通过下标来访问.比如有一个ARRAY类型的变量fruits,它是由['apple','oran

大数据技术之_08_Hive学习_01_Hive入门+Hive安装、配置和使用+Hive数据类型

第1章 Hive入门1.1 什么是Hive1.2 Hive的优缺点1.2.1 优点1.2.2 缺点1.3 Hive架构原理1.4 Hive和数据库比较1.4.1 查询语言1.4.2 数据存储位置1.4.3 数据更新1.4.4 索引1.4.5 执行1.4.6 执行延迟1.4.7 可扩展性1.4.8 数据规模第2章 Hive安装.配置和使用2.1 Hive安装地址2.2 Hive安装部署2.3 将本地文件导入Hive案例2.4 MySql安装2.4.1 安装包准备2.4.2 安装MySql服务器2.

第3章 Hive数据类型

第3章 Hive数据类型 3.1 基本数据类型 对于Hive的String类型相当于数据库的varchar类型,该类型是一个可变的字符串,不过它不能声明其中最多能存储多少个字符,理论上它可以存储2GB的字符数. 3.2 集合数据类型 Hive有三种复杂数据类型ARRAY.MAP 和 STRUCT.ARRAY和MAP与Java中的Array和Map类似,而STRUCT与C语言中的Struct类似,它封装了一个命名字段集合,复杂数据类型允许任意层次的嵌套. 案例实操 1) 假设某表有如下一行,我们用

HIVE 数据类型

数据类型 Hive基本的数据类型: Hive集合数据类型: 另外还有一个复合数据类型,可以综合上面的数据类型组合到一起. ·          union: UNIONTYPE<data_type, data_type, ...> 限定符 Hive默认的限定符: Structs: structs内部的数据可以通过DOT(.)来存取,例如,表中一列c的类型为STRUCT{a INT; b INT},我们可以通过c.a来访问域aMaps(K-V对):访问指定域可以通过["指定域名称&qu

HIVE数据类型及存储格式

https://www.cnblogs.com/qingyunzong/category/1191578.html一.数据类型1.基本数据类型Hive 支持关系型数据中大多数基本数据类型boolean true/false TRUE tinyint 1字节的有符号整数 -128~127 1Y smallint 2个字节的有符号整数,-32768~32767 1S int 4个字节的带符号整数 1 bigint 8字节带符号整数 1L float 4字节单精度浮点数 1.0 double 8字节双

Hive的基本使用(一)—— 数据类型

Hive的基本使用(一)--数据类型 1. Hive的基本数据类型 Hive数据类型 Java数据类型 长度 例子 TINYINT byte 1byte有符号整数 20 SMALINT short 2byte有符号整数 20 INT int 4byte有符号整数 20 BIGINT long 8byte有符号整数 20 BOOLEAN boolean 布尔类型,true或者false TRUE FALSE FLOAT float 单精度浮点数 3.14159 DOUBLE double 双精度浮

Hive介绍、安装(转)

1.Hive介绍 1.1 Hive介绍 Hive是一个基于Hadoop的开源数据仓库工具,用于存储和处理海量结构化数据.它是Facebook 2008年8月开源的一个数据仓库框架,提供了类似于SQL语法的HQL语句作为数据访问接口,Hive有如下优缺点: l  优点: 1.Hive 使用类SQL 查询语法, 最大限度的实现了和SQL标准的兼容,大大降低了传统数据分析人员学习的曲线: 2.使用JDBC 接口/ODBC接口,开发人员更易开发应用: 3.以MR 作为计算引擎.HDFS 作为存储系统,为

hive初探2_数据模型

1.hive数据类型: 基本数据类型:tinyint.smallint.int.bigint.float.double.boolean.string 复合数据类型: array:一段有序字段,字段的类型必须相同 map:一组无序的健/值对,健的类型必须是原子类型 struct:一组命名的字段,类型可以不同 复杂数据类型用法如下: Create table complex( col1 ARRAY<INT>, Col2 MAP<STRING,INT>, Col3 STRUCT<a