当前位置:   article > 正文

Hive Sql 大全(1)

hive sql

Hive Sql 大全

本文基本涵盖了Hive日常使用的所有SQL,因为SQL太多,所以将SQL进行了如下分类:

一、DDL语句(数据定义语句):

  1. 对数据库的操作:包含创建、修改数据库

  2. 对数据表的操作:分为内部表及外部表,分区表和分桶表

二、DQL语句(数据查询语句):

  1. 单表查询、关联查询

  2. hive函数:包含聚合函数,条件函数,日期函数,字符串函数等

  3. 行转列及列转行:lateral view 与 explode 以及 reflect

  4. 窗口函数与分析函数

  5. 其他一些窗口函数

Hive的DDL语法

对数据库的操作

  • 创建数据库:
  1. create database if not exists myhive;
  2. 说明:hive的表存放位置模式是由hive-site.xml当中的一个属性指定的 :hive.metastore.warehouse.dir
  3. 创建数据库并指定hdfs存储位置 :
  4. create database myhive2 location '/myhive2';
  • 修改数据库:
alter  database  myhive2  set  dbproperties('createtime'='20210329');

说明:可以使用alter  database 命令来修改数据库的一些属性。但是数据库的元数据信息是不可更改的,包括数据库的名称以及数据库所在的位置

  • 查看数据库详细信息
  1. 查看数据库基本信息
  2. hive (myhive)> desc  database  myhive2;
  3. 查看数据库更多详细信息
  4. hive (myhive)> desc database extended  myhive2;
  • 删除数据库
  1. 删除一个空数据库,如果数据库下面有数据表,那么就会报错
  2. drop  database  myhive2;
  3. 强制删除数据库,包含数据库下面的表一起删除
  4. drop  database  myhive  cascade; 

对数据表的操作

对管理表(内部表)的操作:

  • 建内部表:
  1. hive (myhive)> use myhive; -- 使用myhive数据库
  2. hive (myhive)> create table stu(id int,name string);
  3. hive (myhive)> insert into stu values (1,"zhangsan");
  4. hive (myhive)> insert into stu values (1,"zhangsan"),(2,"lisi");  -- 一次插入多条数据
  5. hive (myhive)> select * from stu;
  • 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字节双精度浮点数 1.0
DEICIMAL 任意精度的带符号小数 1.0
STRING 字符串,变长
声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号