Oracle-05:伪表dual

 

 

------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥-------------

 

 

此乃这张表里的全部字段信息,此表无法做修改操作

 

为什么有伪表这个概念??????????

因为sql92的一个标准,select 后面要加上from 表名

像一个比较简单的语句,在Mysql和Oracle中有不一样的结果

select 9*9

在Mysql中可以正常计算,而Oracle则不行

具体的原因是Oracle是符合sql92的标准,而Mysql不是,所以,Oracle要想实现select 9*9的运算,拿出了伪表dual

 

select 9*9 from dual

 

dual表就是oracle与数据字典自动创建的一张表,这张表是一个单行单列的表,这个表只有1列:DUMMY,数据类型为VERCHAR2(1),dual表中只有一个数据'X', Oracle有内部逻辑保证dual表中永远只有一条数据。dual表主要是用来选择系统变量或是求一个表达式的值

 

 

 

用伪表的方式查询系统时间

select sysdate from dual;

用自定义的格式展示当前时间:

 

select to_char(sysdate,'yyyy-MM-ss HH:mm:ss') from dual;

 

posted @ 2018-05-07 21:59  晨曦Dawn  阅读(279)  评论(0编辑  收藏  举报