Oracle中的dual表到底是干什么的


dual是一个虚拟表,用来构成select的语法规则,Oracle保证dual里面永远只有一条记录。我们可以用它来做很多事情,如下:

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

sql代码
select user from dual;

2、用来调用系统函数

sql代码
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;--获得当前系统时间  
select SYS_CONTEXT('USERENV','TERMINAL') from dual;--获得主机名  
select SYS_CONTEXT('USERENV','language') from dual;--获得当前locale  
select dbms_random.random from dual;--获得一个随机数

3、得到序列的下一个值或当前值,用下面语句

sql代码
select your_sequence.nextval from dual;--获得序列your_sequence的下一个值  
select your_sequence.currval from dual;--获得序列your_sequence的当前值

4、可以用做计算器

sql代码
select 7*9 from dual;

相关内容