如何在Hive构造Dual表

dual表的概念来自oracle,数据库建立时即与数据字典一起初始化,该表只有一个varchar2类型名为dummy的字段,表数据只有一行“X”,用来查询一些系统信息,如select sysdate from dual; select user from dual;select seq.nextval from dual等。
为了能在hive中测试一些时间、数学、聚合函数,可以仿照oracle创建dual表。

  1. 在Hive中创建一个名字叫做dual的表,里面只有一个列dummy;

    create table dual(dummy string);

  2. 在linux系统上,创建dual.txt文件

    echo 'Hive' > dual.txt

  3. 将dual.txt文件中数据加载到hive中的dual表

    直接在linux命令行下执行:
    hive -e "load data local inpath '/home/hadoop/dual.txt' overwrite into table dual"
    或者在hive中,直接执行
    load data local inpath '/home/hadoop/dual.txt' overwrite into table dual;

  4. 执行完上面命令之后,回到hive中,尝试下

    select 'test' from dual;
    结果如下:

    1
    2
    3
    OK
    test
    Time taken: 0.055 seconds, Fetched: 1 row(s)