dbeaver导出建表语句_Hive的导⼊导出和常⽤过滤语句的学习数据的导⼊
1. load data [local]
创建数据表
加载数据
load data local inpath '/data/hivetest/stu_info_two' into table stu_info;
加载HDFS数据,移动数据⽂件到表对应的⽬录
我们先清空数据truncate table stu_info;
将数据加载到HDFS上
hdfs dfs -put /data/hivetest/stu_info_local_format /hivetestdata/
Hive中查看下
然后加载数据
1. load data + overwrite 覆盖数据
为了区分我们新创建数据库
可以覆盖数据
3、⼦查询 as select
create table tb_stu_as_test_stu as select * from stu_info;适合数据查询结果的保存
4、insert ⽅式
插⼊数据的表必须要存在
我们创建新表
我们如果再执⾏⼀遍,数据就会增多(追加)
执⾏覆盖(原先数据变了)
在关系型数据库插⼊⼀条数据
insert into table table_name(id,name) values(1,'test');
Hive也⽀持插⼊
insert into table hive_table_name(id,name) values(1,'test');
注意:这种⽅式适合数据⾮常⼩的情况下去使⽤,如果⼤数据量,避免这种操作,如果执⾏show tables会发现⼀个临时表values__tmp__table__1,说明SQL这种⽅式⽤在Hive中会⽤临时表过渡。
5、建表的时候⽤location指定数据⽂件的⽅式
数据的导出
官⽹
1. INSERT OVERWRITE [LOCAL] DIRECTORY directory1 ⽅式(local的⽅式和插⼊⼀样⼀个是本地⼀个是HDFS)
Insert overwrite local directory '/data/hivetest/export_local_stu_info' select * from stu_info;
我们查看数据
添加语句可以指定分隔符 ROW FORMAT DELIMITED FIELDS TERMINATED BY ' '
语句:
Insert overwrite local directory '/data/hivetest/export_local_stu_info' ROW FORMAT DELIMITED FIELDS TERMINATED BY ' ' select * from stu_info;
数据有空格了
如果不使⽤local的话就是将输⼊导⼊到HDFS中,就可以⽤hdfs命令下载⽂件了
1. bin/hive -e 或者 -f + >> 或者 >
hive -e 'select * from db_import_export.stu_info' >> /data/hivetest/export_local_stu_;
1. 可以使⽤sqoop等⼯具
我们使⽤之前的数据库
select * from emp where sal > 3000;
select * from emp limit 5;
select distinct fromselect distinct deptno from emp;
select * from emp where sal between 1300 and 3000;
select * from emp where sal >=1000 and sal <= 3000;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论