Oracle的SELECT语法的限制为:
SELECT * | 列名 FROM table
所以,没有 表名 就 无法查询,dual为的就是 符合语法
dual不是缩写词,本身就是完整的单词。dual名词意思是对数,做形容词时是指二重的,二元的。
Oracle中的dual表是一个单行单列的 虚拟表。
Dual表是oracle与数据字典一起自动创建的一个表,这个表只有1列:DUMMY,数据类型为VERCHAR2(1),dual表中只有一个数据’X’, Oracle有内部逻辑保证dual表中永远只有一条数据。
Dual表主要用来选择 系统变量 或求一个 表达式的值。
例子
查询系统时间,时间日期并不存放在任何表中,为了让select语句能够正确执行,必须得有表,所以就用
daulSELECT sysdate FROM daul当作计算器用
select 1+2 from dual;