三步构建Hive自己的dual

浏览: 2949

       dual表的概念来自oracle,数据库建立时即与数据字典一起初始化,该表只有一个varchar2类型名为dummy的字段,表数据只有一行“X”,用来查询一些系统信息,如select sysdate from dual等。

       Hive也可以建立自己的虚表-dual!


1.首先创建一个空的txt,dual.txt,将X重定向到文件中:

image.png


2.在hive中default库下创建dual表:

create table dual (dummy string);

image.png


3.将dual.txt的数据导入到Hive的dual表中:

load data local inpath'/opt/dual.txt' overwrite into table dual;

image.png


以上三步就轻松完成了Hive的dual表,我们测试一下:

select

to_date('2016-12-08 10:03:01'),

year('2016-12-08 10:03:01'),

month('2016-12-08'),

day('2016-12-08 10:03:01'),

hour('2016-12-08 10:03:01'),

minute('2016-12-08 10:03:01'),

second('2016-12-08 10:03:01')

from dual;

image.png


再比如,我们体验一下like:

select 1 from dual where '123' like '12%'

image.png


打完收工!

免费课程https://edu.hellobi.com/course/283

加入课程可以跟我索取学员版的大数据环境虚拟镜像,导入虚拟机就可以使用,无缝开启大数据学习!

image.png

推荐 6
本文由 Max_Leo 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

1 个评论

请教虚表的作用是什么?因为不用它也可以查:
select

to_date('2016-12-08 10:03:01'),

year('2016-12-08 10:03:01'),

month('2016-12-08'),

day('2016-12-08 10:03:01'),

hour('2016-12-08 10:03:01'),

minute('2016-12-08 10:03:01'),

second('2016-12-08 10:03:01')
也会出结果;

要回复文章请先登录注册