select 1 from dual 中的1表示的含义


在Oracle数据库内有一种特殊的表Dual。Dual表是Oracle中的一个实际存在的表,任何用户均可读取,常用在没有目标表的Select中。Dual表由Oracle连同数据字典一同创建,所有的用户都可以用名称DUAL访问该表。这个表里只有一列DUMMY,该列定义为VARCHAR2(1)类型,有一行值X。从DUAL表选择数据常被用来通过select语句计算常数表达式,由于DUAL只有一行数据,所以常数只返回一次。

select from table;

select  anycol(目的表集合中的任意一行)  from  table ;   -- (目的表集合中的任意一行)
select  from  table
上面这三条语句从作用上来说是没有差别的,都是查看是否有记录,一般是作条件查询用的。

select 1 from 中的1是一常量(可以为任意数值),查到的所有行的值都是它,但从效率上来说,1>anycol>*,因为不用查字典表。

字典表(数据字典通常包括数据项\数据结构\数据流\数据存储和处理过程五个部分。以Oracle数据库字典为例:数据字典分为数据字典表和数据字典视图)

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM