Hive -- SQL 语法

Hive是一个数据仓库基础的应用工具,在Hadoop中用来处理结构化数据,它架构在Hadoop之上,通过SQL来对数据进行操作。

Hive 查询操作过程严格遵守Hadoop MapReduce 的作业执行模型,Hive 将用户的Hive SQL 语句通过解释器转换为MapReduce 作业提交到Hadoop 集群上,Hadoop 监控作业执行过程,然后返回作业执行结果给用户。Hive 并非为联机事务处理而设计,Hive 并不提供实时的查询和基于行级的数据更新操作。Hive 的最佳使用场合是大数据集的批处理作业。

下面总结一下Hive操作常用的一些SQL语法:

"[ ]"括起来的代表我们可以写也可以不写的语句。

1、创建数据库

CREATE DARABASE name;

显示查看操作命令:

show tables; --显示表

show databases; --显示数据库

show partitions table_name; --显示表名为table_name的表的所有分区

show functions ; --显示所有函数

describe extended table_name col_name; --查看表中字段

2、DDL(Data Defination Language)

数据库定义语言

  • 创建表结构

  • CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name
    
    [(col_name data_type [COMMENT col_comment], ...)]
    
    [COMMENT table_comment]
    
    [PARTITIONED BY (col_name data_type [COMMENT col_comment], ...)]
    
    [CLUSTERED BY (col_name, col_name, ...)
    
    [SORTED BY (col_name [ASC|DESC], ...)] INTO num_buckets BUCKETS]
    
    [ROW FORMAT row_format]
    
    [STORED AS file_format]
    
    [LOCATION hdfs_path]
    • CREATE TABLE:创建一个指定名字的表。如果相同名字的表已经存在,则抛出异常;用户可以用 IF NOT EXIST 选项来忽略这个异常
    • EXTERNAL: 关键字可以让用户创建一个外部表在建表的同时指定一个指向实际数据的路径(LOCATION)
    • LIKE: 允许用户复制现有的表结构,但是不复制数据
    • COMMENT:可以为表与字段增加描述
    • ROW FORMAT: 设置行数据分割格式
  • 创建简单表:

  • CREATE TABLE person(name STRING,age INT);

猜你喜欢

转载自www.cnblogs.com/gengyufei/p/12913411.html