#开启hive模式
hive
#查看数据库
show databases;
#进入某个数据库
use 数据库;
#创建数据库
CREATE SCHEMA 数据库名;
#删除数据库
DROP DATABASE IF EXISTS 数据库名;
#查看所有的表
desc 表名;
#显示表结构
desc 表名;
#查询表数据
select * from 表名;
#创建数据表
use 数据库名; create table 表名; #内部表
#删除表
drop table if exists 表名;
#把本地数据装载到数据表
load data local inpath '/root/a.txt' into table 表名;
#把HDFS上的数据装载到数据表
load data inpath '/target.txt' into table 表名;
#向无分区的表插入数据
覆盖原有表里的数据:
INSERT OVERWRITE TABLE 库名.表名 SELECT ... FROM 库名.表名 where...;
向现有的表插入数据 (之前的数据不会被覆盖):
INSERT INTO TABLE 库名.表名 SELECT ... FROM 库名.表名 WHERE ...;
#修改字段
alter table 表名 change 原字段名 修改后字段名 修改后字段的数据类型;
#增加字段
alter table 表名 add columns(字段名 数据类型 conment '新增');
#删除字段
alter table table_name replace columns(字段名1 数据类型,字段名2 数据类型,字段名3 数据类型);
(数据类型:tinyint ,smallint,int,bigint,float,decimal,boolean,string)
#联表查询(分主次表)
select * from (select 字段名 from 表名 )临时表名(主表名) left join 次表名 给次表命名 ON 次表名.字段名=主表名.字段名;