Oracle数据库之Dual
Dual 是什么?
dual就像是一个tom猫一样, 你在 select后输入的是什么 最后返回的结果是什么
专业术语:dual是一个虚拟表,用来构成select的语法规则,oracle保证dual里面永远只有一条记录。我们可以用它来做很多事情
Dual可以做什么?
1、查看当前用户,可以在 SQL Plus中执行下面语句
for example: select user from dual;
2、用来调用系统函数
for example:
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、得到序列的下一个值或当前值,用下面语句
for example:
select your_sequence.nextval from dual;--获得序列your_sequence的下一个值
select your_sequence.currval from dual;--获得序列your_sequence的当前值
4、可以用做计算器
for example:select 7*9 from dual;
5、可以用做数据类型转换to_char,to_date,to_number
for example:
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;--获得当前系统时间
6、可以用做字符串的拼接 'zs'||' love '||' xiaoli'
for example:
select 'zs'||' love'||' xiaoli' from dual;
7、其他操作只要符合逻辑,都可以使用
for example:
select * from dual;