study/oracle/dual表的用途.md

33 lines
917 B
Markdown
Raw Permalink Normal View History

2020-02-23 14:23:40 +00:00
# dual表的使用
### 简介
dual 是一张虚拟表用来构成select语句的语法规则oracle保证dual里面只有一条记录。
## dual用途
* 查看当前用户
```sql
select user from dual;
```
* 用来调用系统函数
```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; -- 获取当前的loacle
select dbms_random.random from dual; -- 获取随机数
```
* 得到当前序列的值或者下一个值
```sql
select your_sequence.nextval from dual;--获得序列your_sequence的下一个值
select your_sequence.currval from dual;--获得序列your_sequence的当前值
```
* 得到1到(n - 1)的数
```sql
select level r from dual connect by level < 10; -- 输出1-9的数
```
* 计算器
```sql
select 7*9 from dual;
```