hive中构建dual虚表

来源:互联网 发布:linux ddos 攻击工具 编辑:程序博客网 时间:2024/06/08 19:40

刚接触到hive的时候想测试有些函数的功能,习惯性的用dual却报错,例如:

hive> select 1+1 from dual;FAILED: SemanticException [Error 10001]: Line 1:16 Table not found 'dual'

但是我们可以自己构造一个类似于oracle的dual虚表。

1.首先创建一个lijie.txt,将X重定向到文件中

echo 'X' > lijie.txt

2.创建dual表在hive中

hive> create table lijie.dual (dummy string);OKTime taken: 0.341 seconds

3.将lijie.txt数据load到dual表中

hive> load data local inpath'/home/hadoop/lijie.txt' overwrite into table lijie.dual;Loading data to table lijie.dualTable lijie.dual stats: [numFiles=1, numRows=0, totalSize=2, rawDataSize=0]OKTime taken: 0.648 seconds

4.构建好dual虚表后测试

hive> select 1+1 from dual;OK2Time taken: 0.156 seconds, Fetched: 1 row(s)hive> select 'hello world' from dual;OKhello worldTime taken: 0.05 seconds, Fetched: 1 row(s
0 0