栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

hive视图

hive视图

Hive的视图 应用场景将特定的列提供给用户,保护数据隐私 用于查询语句复杂的场景 通过隐藏子查询、连接和函数来简化查询的逻辑结构只保存定义,不存储数据 如果删除或更改基础表,则查询视图将失败 视图是只读的,不能插入或装载数据 -- 创建视图,支持 CTE, ORDER BY, LIMIT, JOIN,等 CREATE VIEW view_name AS SELECt statement;  -- 查找视图 (SHOW VIEWS 在 hive v2.2.0之后)  SHOW TABLES;   -- 查看视图定义  SHOW CREATE TABLE view_name;   -- 删除视图  DROP view_name;   --更改视图属性  ALTER VIEW view_name SET TBLPROPERTIES ('comment' = 'This is a view');  -- 更改视图定义  ALTER VIEW view_name AS SELECT statement; explode只能是单个,如果需要多个需要 select name,wp from employee lateral view explode(work_place) work as wp ; explode(列名): Hive内置的表生成函数,主要用于把一行输入拆成多行。 explode(ARRAY < T> a) 将一个数组展开为多行。返回一个带有单列(col)的行集,数组中每个元素都有一行 explode(MAP m) 将一个映射展开为多行。返回一个带有两列(键,值)的行集,从输入映射中为每个键值对返回一行。(从Hive0.8.0起) explode(split(word,’ |’)) 将某一列名为word展开为多行,返回分割“|”后所有的值,分割后的所有值每一个都返回一行 stack(int r,T1 V1,…,Tn/r Vn) 将n个值V1,…,Vn分解为r行。每行将有n/r列,r必须是常数。 ———————————————— 侧视图 Outer Lateral Views(外侧视图): OUTER关键字:即使侧视图的列没有值,output为空也会打印生成结果为null SELECt explode(split(t.name, ',')) from t1 t; explode函数的作用是把列转行array 与 map; SELECt id,colAliasName from t1 t LATERAL VIEW explode(split(t.name, ',' )) tableAliasName as colAliasName Union和Union all: (1)Union:对两个结果集进行并集操作,去除重复行,同时进行默认规则的排序。 (2)Union all:对两个结果集进行并集操作,不去除重复行,不进行排序。 模糊查询 select * from ods.ods_sjc_events_rt where event like concat ( '%' , 'OCR' , '%' ) ;

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/682772.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号