閱讀331 返回首頁    go iPhone_iPad_Mac_apple


Oracle 中 dual 詳解

基本上oracle引入dual為的就是符合語法
1. 我們先從名稱來說,dual不是縮寫詞,本身就是完整的單詞。dual名詞意思是對數,做形容詞時是指二重的,二元的。
2. Oracle
中的dual表是一個單行單列的虛擬表。

3. Dual表主要用來選擇係統變量或求一個表達式的值。
4. 
更具體的說,我們見過這樣一個簡單的例子: 
      SELECT sysdate FROM daul
   
OracleSELECT語法的限製為:
SELECT * | [column1 [AS alias1], column2 [AS alias2]] FROM table
所以,沒有表名就沒有辦法查詢,而時間日期並不存放在任何表中,於是這個dual虛擬表的概念就被引入了。

備注:

dual是一個係統表,不能刪除或者修改其表結構。它的名稱叫做偽表或者啞表
查看其表結構:
SQL> desc dual
名稱        是否為空?類型
----------- -------- -----------
DUMMY               VARCHAR2(1)

其字段隻有一個“dummy”,中文叫做啞巴。長度隻有1。這個表結構隻供參考。

 

DUAL表的用途:
Dual
Oracle中的一個實際存在的表,任何用戶均可讀取,常用在沒有目標表的Select語句塊中
--
查看當前連接用戶
SQL> select user from dual;
--
查看當前日期、時間
SQL> select sysdate from dual;
SQL> select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;
--
當作計算器用
SQL> select 1+2 from dual;
--
查看序列值
SQL> create sequence aaa increment by 1 start with 1;
SQL> select aaa.nextval from dual;

 

 

最後更新:2017-04-03 12:54:06

  上一篇:go Visual Studio快捷鍵
  下一篇:go ASP.NET中Website與WebApplication的區別