Oracle 可以在沒有 FROM 子句的情況下執行 SELECT 查詢嗎?
Oracle 與 SQL Server 不同,不支援沒有 FROM 子句的 SELECT 查詢。作為解決方法,通常的做法是使用雙表進行此類操作,如下例所示:
Select 1,2+3, 'my dummy string' FROM DUAL
是否建議這種做法?
在 Oracle 中,使用雙表進行被動 SELECT 查詢被視為良好實踐。 Dual 是一個記憶體表,在未選擇 DUMMY 時採用快速存取路徑 (FAST DUAL),從而消除了 I/O 操作。
最初,dual 由兩筆記錄組成,並用作虛擬記錄集加入。今天,它只包含一筆記錄。但是,它允許使用CONNECT BY 子句產生任意數量的行:
SELECT level FROM dual CONNECT BY level <= 100
其他平台
值得注意的是,MySQL 也支援使用雙重和無源SELECT 語法。
以上是Oracle 是否允許不帶 FROM 子句的 SELECT 查詢?的詳細內容。更多資訊請關注PHP中文網其他相關文章!