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