HiveQL学习笔记

HiveQL学习笔记1

1、SQL和HiveQL的概要比较

特性 SQL HiveQL
更新 UPDATA , INSERT, DELETE UPDATE, INSERT, DELETE
事务 支持 有限支持
索引 支持 支持
延迟 亚秒级 分钟级
数据类型 整数,浮点数,定点数,文本和二进制串,时间 布尔型,整数,浮点数,文本和二进制串,时间戳,数组,映射,结构
函数 数百个内置函数 数百个内置函数
多表插入 不支持 支持
CREATE TABLE AD SELECT 部分数据库支持 支持
SELECT SQL-92 SQL-92。支持偏序SORT BY。可限制返回行数量的LIMIT
连接 SQL-92支持或变相支持 内连接,外链接,半连接,映射,连接,交叉连接
子查询 在任何字句中支持“相关”的或不相关的 只能在FORM,WHERE或HAVING子句中
视图 可更新 只读
扩展点 用户自定义函数,存储过程 用户定义函数, MapReduce脚本

2、数据类型

基本数据类型

类型 描述 文字示例
BOOLEAN true/false TRUE
TINYINT 1字节有符号整数,[-128,127] 1Y
SMALLINT 2字节有符号整数,[-32768,32767] 1S
INT 4字节有符号整数[-2147483,2147483647] 1
BIGINT 8字节有符号整数[-9223372036854775808, 9223372036854775807] 1L
FLOAT 4字节单精度浮点数 1.0
DOUBLE 8字节双精度浮点数 1.0
DECIMAL 任意精度有符号小数 1.0
STRING 无上限可变长度字符串 ‘a’ “a”
VARCHAR 可变长度字符串 ‘a’ “a”
CHAR 固定长度字符串 ‘a’ “a”
BINARY 字节数据 不支持
TIMESTAMP 精度到纳秒的时间戳
DATE 日期 2018-05-31

复杂数据类型

类型 描述 文字示例
ARRAY 一组有序字段,字段的类型必须相同 array(1,2)
MAP 一组无序的字段,键的类型必须是原子的;值可以是任何类型,同一个映射的键的类型必须相同,值得类型也必须相同 map(‘a’,1,’b’,2)
STRUCT 一组命名的字段,字段的类型可以不同 struct(‘a’,1, 1.0), named_struct(‘col1’, ‘a’, ‘col2’, 1)
UNION 值得数据类型可以是多个被定义的数据类型中的任意一个,这个值通过一个整数(零索引)来标记其为联合类型中的哪个数据类型 create_union(1,’a’,63)

猜你喜欢

转载自blog.csdn.net/li_and_li/article/details/80519926