Oracle dual
来源:互联网 发布:做网络直播设备 编辑:程序博客网 时间:2024/06/06 22:45
dual 是一个系统表,不能删除或者修改其表结构。它的名称叫做“伪表” dual 是一个系统表,不能删除或者修改其表结构。它的名称叫做“伪表”或者 哑表”。查看表结构:
SQL> desc dual; Name Type Nullable Default Comments ----- ----------- -------- ------- -------- DUMMY VARCHAR2(1) Y
其字段只有一个“dummy”,中文叫做“哑巴” 其字段只有一个“dummy”,中文叫做“哑巴”。长度只有 1。这个表结构只供 “dummy” 参考。
在 Oracle 中,使用 dual 的主要原因是为了计算表达式的值。如计算:99*99。 表的操作只能是查询,其它如增删改或者修改表结构, 对 dual 表的操作只能是查询,其它如增删改或者修改表结构,都没有实际应用 价值,不用研究。 不使用。 价值,不用研究。何况有可能会导致 Oracle 不使用。
SQL> select 99*99 from dual; 99*99 ---------- 9801
也可以一次性计算多个表达式的值:
SQL> select 9*9,1+1,1/null from dual; 9*9 1+1 1/NULL ---------- ---------- ---------- 81 2
注意:“1/null”的结果为 null。因为在数据库中,任何值与 null 进行运算,其结果为 null。
还有一个最常见的用途就是查询当前系统日期,对应函数是:sysdate,即“sysdate date”:
SQL> select sysdate from dual; SYSDATE ----------- 2011-12-1 1
为了更容易看懂,可以用 to_char 函数指定显式的格式。
SQL> select to_char(sysdate,'yyyy.mm.dd') as 当前日期 from dual; 当前日期 ---------- 2011.12.01
SQL> select to_char(sysdate,'yyyy.mm.dd hh24:mi:ss') as 当前时间 from dual; 当前时间 ------------------- 2011.12.01 18:40:06
插入数据时也可以用到,不过这是一个技巧:
SQL> create table test_delete(name varchar2(10),value int); Table created
SQL> INSERT INTO test_delete 2 SELECT '张三', 100 FROM dual 3 UNION ALL SELECT '张三', 100 FROM dual 4 UNION ALL SELECT '李四', 80 FROM dual 5 UNION ALL SELECT '王五', 80 FROM dual 6 UNION ALL SELECT '王五', 80 FROM dual 7 UNION ALL SELECT '赵六', 90 FROM dual 8 UNION ALL SELECT '赵六', 70 FROM dual; 7 rows inserted
另外,在学习序列以后,就可以知道,查询序列的下一个值和当前值,通常也 会用到 dual 表。
小结:
·dual 表主要用于计算表达式。
·表结构只供参数,实际返回的列数与表达式的个数有关 表结构只供参数, 表只有可能返回一行,不可能返回多行。
·dual 表只有可能返回一行,不可能返回多行。因为 dual 表并不是从表中取数据。
- oracle dual
- (oracle)dual
- Oracle dual
- ORACLE DUAL
- oracle dual
- 小结:Oracle Internals: DUAL
- Oracle DUAL 奇观!
- Oracle的DUAL
- 神秘的 ORACLE DUAL
- oracle dual(虚拟表)
- oracle中的dual
- Oracle的dual表
- ORACLE关于DUAL表
- Oracle SYS_CONTEXT&dual
- ORACLE DUAL表详解
- ORACLE DUAL表详解
- 神秘的 ORACLE DUAL
- oracle dual 表
- 使用SQL_TRACE进行数据库诊断
- Stack实现十进制转二进制
- java clone使用解析
- 学习云计算
- strcat函数
- Oracle dual
- 发挥Windows Server 2003远程桌面的作用
- swift 简要介绍
- I.MX LCD resolution define.
- 乱七八糟
- oracle 10g logminer 使用
- Nutch 1.3 源码分析 5 Fetcher流程
- 直方图均衡化
- JSTL 学习、应用记录