Hive中怎样创建和查询视图信息?

news2024/11/19 18:43:43

视图是从数据库的数据表中选取出来的数据组成的逻辑窗口,它是一个虚拟机表。引入视图后,用户可以将注意力集中在关心的数据上,如果数据来源于多个基本表结构,并且搜索条件比较复杂时,需要编写的查询语句就会比较烦琐,此时可以使用视图将数据查询语句变得简单可行。

Hive中的视图是一种无关底层存储的逻辑对象,也就是说视图中的数据并不会持久化到HDFS中。视图中的数据是来自SELECT语句查询的结果集,一旦视图创建完成,便不能向视图中插入或者加载数据。本节针对视图的创建和查询视图信息进行讲解。

创建视图的语法格式如下:

CREATE VIEW [IF NOT EXISTS] [db_name.]view_name
[(column_name [COMMENT column_comment], ...) ]
  [COMMENT view_comment]
  [TBLPROPERTIES (property_name = property_value, ...)]
AS SELECT...1

上述语法的具体讲解如下。

·CREATEVIEW:表示创建视图的语句,创建视图时无法指定列的数据类型,列的数据类型与查询语句中数据表对应列的数据类型一致。

·IFNOTEXISTS:可选,判断创建的视图是否存在。

·db_name:可选,用于指定创建视图的数据库。

·view_name:用于指定视图名称。

·column_name:可选,用于指定列名,若没有指定列名,则通过查询语句生成列名,生成的列名与查询语句中数据表的列名一致。

·COMMENTcolumn_comment:可选,用于指定列描述。

·COMMENT view_comment:可选,用于指定视图描述。

·TBLPROPERTIES(property_name=property_value,…):可选.用于指定视图的属性。

·AS SELECT:用于指定查询语句。

接下来,在虚拟机Node_03中使用Hive客户端工具Beeline.远程连接虚拟机Node_02的HiveServer2服务操作Hive.在数据库hive_database中创建视图view_table,具体命令如下。

CREATE VIEW IF NOT EXISTS hive_database.view_table
 COMMENT "This is a view table"
AS SELECT staff_name FROM hive_database.managed_table_new;

上述命令根据查询内部表managed_table_new中列staff_name的结果集,在数据库hive_database 中创建视图 view_table,此时视图 view_table 中只包含列 staff_name。上述命令执行完成后,在Hive客户端工具Beeline中执行"DESC view_table;”命令,查看数据库hive_database中视图view_table的表结构信息。

注意:若创建视图时,查询语句中包含表达式,则列名称会以_c0,_cl表示,例如查询语句中以X+Y的方式查询列X和列Y,则视图中显示这两列数据的列名为_c0和_cl。

查询视图信息

查询视图信息的语法格式如下。

DESC [FORMATTED] view_table:

接下来,在虚拟机Node_03中使用Hive客户端工具Beeline,远程连接虚拟机Node_02的HiveServer2服务操作Hive,查看视图view_table的详细结构信息和基本结构信息,具体命令如下。

/ * 查看视图view_table的详细结构信息 * /
DESC FORMATTED view_table;
/ * 查看视图view_table的基本结构信息 * /
DESC view_table;

查看视图

在视图view_table的详细结构信息中并没有出现Location参数(数据文件存放目录),这说明视图的数据并不会进行实际存储,并且视图view_table中列以及列的数据类型与内部表managed_table中列 staff_name一致,说明若创建视图时没有提供列名,则通过查询语句生成列名,生成的列名与查询语句中数据表的列名一致。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/691595.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

hivesql 将数据处理成复杂json

类型一 原数据:bankid是array类型 目标数据: {"bankname": ["SPDB", "WS_HBBANK", "mytest"],"grid": [{"name": "阶段1","values": ["38.0,1.0,1.0"]}…

安全生产月评选活动-优秀的“安全之星”,塑造榜样力量

安全生产月评选活动-优秀的“安全之星”,塑造榜样力量。 推荐功能:投票 企业可以举办安全生产月评选活动,选出优秀的“安全之星”,进行内部评选,塑造榜样力量。 首先,让我们先来了解一下“安全生产月评选活…

MYSQL各种log

本章纲要 1、mysql主从复制是怎么实现的(binlog,relaylog) 2、事物执行原理是怎么保证ACID的(redolog,undolog) 一、Mysql是怎么实现主从复制的 数据库主从设计的好处: 1、实现读写分离,方便扩展&#…

MySQL 磁盘爆了,是 optimize table 的锅

2023-06-26 22:17左右,收到某系统的主库磁盘使用率告警。2023-06-26 23:02左右收到该系统的从库磁盘使用率告警。 收到告警后,登录数据库查看各表的磁盘使用。 经分析发现DB存在一个当日的备份表t_eap_sys_navigation_log_bak_20230626 ,且在…

4077:出栈序列统计

codeup【递归入门】出栈序列统计_codeup编程_战斗的咸鱼的博客-CSDN博客 #include<iostream> using namespace std; int n,sum,ans; void dfs(int out,int in,int not_in){if(outn){ans;return;}if(in>0) dfs(out1,in-1,not_in);if(not_in>0&&in<n) dfs…

Vue模板编译

文章目录 导文Vue模板编译是什么&#xff1f;模拟编译模板总结 导文 Vue框架使用了模板编译的方式来将Vue模板转换为可执行的JavaScript代码。这个编译过程在运行时由Vue的编译器完成。 在Vue中&#xff0c;模板是以HTML标记的形式编写的&#xff0c;其中可以包含Vue的特殊语法…

【探索 Kubernetes|作业管理篇 系列 14】StatefulSet 存储状态

前言 大家好&#xff0c;我是秋意零。 在上一篇中&#xff0c;我们讲解了 StatefulSet 的拓扑状态&#xff1b;我们发现&#xff0c;它的拓扑状态&#xff0c;就是顺序启动/删除、Pod 名称编号命名、将 Pod 名称设为 Hostname 名称、通过 Service 无头服务的 DNS 记录访问。 …

基于Python的海量豆瓣电影、数据获取、数据预处理、数据分析、可视化、大屏设计项目(含数据库)

目录 项目介绍研究背景国内外研究现状分析研究目的研究意义研究总体设计网络爬虫介绍豆瓣电影数据的采集数据预处理大数据分析及可视化豆瓣影评结构化分析 大屏可视化文本可视化总结每文一语 项目介绍 有需要本项目的代码或文档以及全部资源&#xff0c;或者部署调试可以私信博…

虹科DataHub:连接工业自动化的桥梁,引领企业数字化转型

一、前言 随着智能制造、工业互联网等新一代信息技术的不断发展&#xff0c;IT和OT融合已成为未来制造业数字化转型的重要趋势。得益于开放的系统架构和创新的软件应用&#xff0c;OT&#xff08;工业自动化技术&#xff09;和信息技术&#xff08;IT&#xff09;系统之间的数…

在windows系统中映射网络驱动器时,如何通过非455端口远程访问Linux服务器的Samba服务

声明 通常情况下&#xff0c;在windows中通过Linux服务器的Samba服务去映射网络驱动器时候&#xff0c;一般默认就是直接填入内网Linux服务器ip即可&#xff0c;它会默认445端口。若是我的windows并不和Linux服务器在一个网段时&#xff0c;该如何操作呢&#xff1f; 1 用管理…

一键转发微信好友朋友圈,自动跟圈

今天咱来讲一下如何实现一键转发朋友圈&#xff1f; 如何一键跟圈&#xff0c;多个微信快速同步发圈&#xff1f; 01 一键转发 浏览朋友圈&#xff0c;在此页面可以浏览所登录的微信号的好友朋友圈&#xff0c;可以实现快速点赞、评论、一键转发。 单击“转发”即可跳转到发…

D. Optical Experiment

题意&#xff1a; D. 光学实验 时间限制&#xff1a;5秒 内存限制&#xff1a;256兆字节 输入&#xff1a;标准输入 输出&#xff1a;标准输出 Phunsuk Wangdu教授进行了一些关于光线的实验。n条光线的实验装置如下&#xff1a; 有一个长方形盒子&#xff0c;在相对的两面…

windows的环回网卡(loopback adapter) 安装方法

0.说明&#xff1a;windows的环回网卡(loopback adapter)的作用&#xff1a; microsoft loopback adapter就是安装在本机上的一块虚拟网卡&#xff0c;它跟本机上的其它物理网卡、和物理网卡连接的网络是没有关系的&#xff0c;你可以理解成这块网卡上的网线接到了另外一个空白…

葡萄风味有奥秘,农科院用机器学习揭示基因渐渗过程

内容一览&#xff1a;基因渐渗与葡萄的驯化、遗传改良密切相关。先前研究揭示了欧洲栽培葡萄中&#xff0c;野生葡萄基因渐渗的基因组信号&#xff0c;但尚未深入研究这些渐渗事件发生的时间、方式、基因组模式和生物学效应。本文中&#xff0c;中国农业科学院深圳农业基因组研…

【杂谈理解】电源芯片设计选型

前言 看B站UP主达尔闻关于电源视频&#xff0c;做的笔记。下述内容中&#xff0c;如有芯片比较皆是性能层面的比较&#xff0c;暂未考虑成本。且老师在视频中&#xff0c;也多次建议说&#xff0c;可以多关注比较新兴的芯片&#xff0c;一般会是有更好的性能。讲的真的很好&…

【MySQL】MySQL数据库,RDBMS 术语,使用说明和报错解决的详细讲解

作者简介&#xff1a; 辭七七&#xff0c;目前大一&#xff0c;正在学习C/C&#xff0c;Java&#xff0c;Python等 作者主页&#xff1a; 七七的个人主页 文章收录专栏&#xff1a; 七七的闲谈 欢迎大家点赞 &#x1f44d; 收藏 ⭐ 加关注哦&#xff01;&#x1f496;&#x1f…

转型升级必备:智能客服外包服务的应用实践

随着信息技术的不断发展&#xff0c;人工智能技术在各个领域的应用越来越广泛&#xff0c;其中智能客服外包服务是一个备受关注的领域。智能客服外包服务是指将企业的客服业务交由专业的第三方服务商处理&#xff0c;并运用人工智能技术提供更高效、更优质的客服服务。本文将从…

FineReport学习2

当原始数据中存储的字段不适宜展现在报表上&#xff1b;或原始数据在数据查询时不易修改&#xff0c;但对显示在报表中的值有要求&#xff1b;或需要根据不同的原始数据在报表中显示不同的值时&#xff0c;就可以利用数据字典做巧妙的转化 设置数据字典 数据列的过滤&#xff…

解决程序错误‘找不到vcruntime140.dll,无法继续执行代码’的全面解决方案

在运行某些应用程序或代码时&#xff0c;你可能会遇到一个错误提示&#xff1a;“找不到vcruntime140.dll,无法继续执行代码”。其实遇到这种情况不需要担心&#xff0c;我们有多种方法可以进行解决&#xff0c;今天小编就来给大家详细的说说vcruntime140.dll文件的相关问题&am…

ABIDE Preprocessd 结构态MRI数据集介绍及下载(FreeSurfer流程)

引言 本博客书接上文&#xff1a;ABIDE Preprocessed 结构态MRI数据集介绍及下载&#xff0c;写前一篇的时候因为觉得FreeSurfer流程处理完成的数据过于庞杂&#xff0c;想要从中获得需要的ROI层面形态学特征过于复杂&#xff0c;所以只是简单说明了其下载方式&#xff0c;并未…