我想在Oracle中使用WITH子句,但它沒有返回任何數據。Oracle WITH子句返回沒有數據
這是我試圖運行查詢...
with test as
(select count(*)
from my_table)
select *
from test;
當我運行這段代碼,我回來的記錄計數MY_TABLE
select count(*)
from my_table
我在甲骨文10克因此查詢應該工作...
select * from v$version;
產生
Oracle數據庫10g企業版發佈10.2.0.4.0 - 64bi
PL/SQL發佈10.2.0.4.0 - 生產
CORE 10.2.0.4.0生產
TNS用於Solaris:10.2.0.4版本。 0 - 生產
NLSRTL版10.2.0.4.0 - 生產
莫非權限問題還是什麼?
* 編輯:*
我相信我的問題是清楚的。即使WITH語句中的「my_table」語句中的「select count(*)」正常工作,使用WITH語句也不會返回任何記錄,這會導致我相信還有另一個問題無法解決,因此,這個問題:)
EDIT 2
好了,如果我嘗試從SQL Server Management Studio中的鏈接服務器執行查詢,我得到了一些錯誤信息反饋:
SG 7357 ,等級16,狀態2,行1 無法處理對象「測試爲 (select count(*) from v $ version) select * from test;「。鏈接服務器「MyServer」的OLE DB提供程序「MSDAORA」表示該對象沒有列或當前用戶沒有該對象的權限。
作爲一個實驗,將單詞test重命名爲xyz123 – EvilTeach
請說明一下您的問題。看起來像DCookie提供了下面的工作示例。即使my_table有零記錄,你也應該得到1行1列的結果'0' –
這聽起來像PL/SQL Developer做錯了什麼。當你從SQL * Plus運行時,你會得到相同的「結果」嗎? –