欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

dual表在oracle,mysql和hive中的使用实例

程序员文章站 2022-03-23 19:46:44
dual表的概念来自oracle,dual是一个虚拟表,数据库建立时即与数据字典一起初始化,该表只有一个varchar2(hive中是string)类型名为dummy的字段,ora...

dual表的概念来自oracle,dual是一个虚拟表,数据库建立时即与数据字典一起初始化,该表只有一个varchar2(hive中是string)类型名为dummy的字段,oracle/mysql保证dual里面永远只有一条记录,用来查询一些系统信息用来构成select的语法规则,。我们可以用它来做很多事情,可以用desc dual查看。

功能如下:

1、查看当前用户,可以在 SQL Plus中执行下面语句

sql代码

select user from dual;

2、用来调用系统函数

sql代码

select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;--获得当前系统时间

select dbms_random.random from dual;--获得一个随机数

3、可以用做计算器

sql代码

select 7*9 from dual

dual在hive中使用:为了能在hive中测试一些时间、数学、聚合函数,可以仿照oracle创建dual表。

hive> create dual (dummy String);

hadoop100@robot]$ echo ‘a’ > /home/hadoop/dual.txt

hive> load data local inpath'/home/hadoop/dual.txt' overwrite into table dual;

即可使用。如:

select round(21.2) from dual;