我試圖提取從ClearQuest這是運行背後一個漂亮的基於Eclipse的前端Oracle數據庫的數據。使用內置的查詢構建器我不能限制數據的提供量足以讓我找到我想要的地方。SQL語句引起ORA-00907:缺少右括號
我的目的:我希望從兩個表中提取數據。表2有許多一對一的關係表1。當從我希望提取從表2中已在表1
我嘗試到指定的記錄集的關係的最新記錄數據庫中提取數據:我開始編寫一個簡單的查詢,使用第二個select來獲取表2中的最新記錄。我無法在我的機器上安裝oracle服務器,因此不得不在MySQL中嘗試查詢並將其調整爲oracle。這是查詢:
select t1.id, t1.name, t2.set_date
from test_table t1, link_table t2
where t2.test_id = t1.id
and t2.set_date = (select set_date
from link_table
where t1.id = test_id
order by set_date desc
limit 1)
and t1.state = 'Closed';
在MySQL中運行此工作正常! 更改查詢以符合Oracle標準給我這個;
SELECT t1.id,t1.name,t2.set_date
FROM test_table t1,link_table t2
WHERE t2.test_id = t1.id
AND t2.set_date = (SELECT set_date
FROM link_table
WHERE t1.id = test_id
AND ROWNUM = 1
ORDER BY set_date DESC)
AND t1.state = 'Closed';
當測試通過一個Oracle格式化運行它(如Instant SQL Formatter)它通過細運行哪個。但是,當將查詢輸入到ClearQuest中以提取數據時,它會給我提供錯誤; ORA-00907: missing right parenthesis
。
我已經嘗試了所有這早上發生變化,無法得到它的工作。我錯過了什麼?
根據[本支持響應(http://www-01.ibm.com/support/docview.wss?uid=swg21121098),嵌套的SQL語句不支持。這可能是一個解釋嗎? –
這當然可以解釋。問題是,我不能真正避免使用嵌套選擇(至少不是我所知...)。 – Sander