今天有一個完整的SQL智能失效,無法弄清楚。 ColdFusion和MS AccessSQL ...基於其他字段的最大值獲取字段值
我正在尋找在ColdFusion中查詢查詢。
原始查詢:
<cfquery name="myQuery" datasource="xxx">
SELECT Name, ID, tblLoc.Directions, tblLoc.LocationOrder
FROM myTable
WHERE .....
ORDER BY tblLoc.LocationOrder
</cfquery>
我想從這個查詢,我檢索路線,其中LocationOrder是最大創建另一個查詢。
因此,如果更改爲MyQuery返回:
Name ID Directions LocationOrder
AA 10 AAAAAA 1
BB 11 BBBBBB 2
My QoQ would return:
Directions
BBBBBB
但看似簡單的SQL我已經試過的每次迭代失敗。我必須半睡半醒。
<cfquery name="latestDirections" dbtype="query">
SELECT Directions
FROM myQuery
WHERE LocationOrder=(select max(LocationOrder) from myQuery)
</cfquery>
<cfquery name="latestDirections" dbtype="query">
SELECT Directions, MAX(LocationOrder) as maxLocationOrder
FROM get_sel_locations
</cfquery>
nope ...既不會。
你的第一個看起來像它應該工作中列出的功能/語法。 `SELECT Directions FROM myQuery WHERE LocationOrder =(從myQuery中選擇max(LocationOrder))` – 2010-12-01 14:14:24
我同意但我得到這個錯誤:Query Of Queries語法錯誤。 遇到「LocationOrder =(選擇。不正確的條件表達式,期望[like | null | between | in | comparison]條件之一, – stuttsdc 2010-12-01 14:31:29
QoQ不支持該類型的子查詢。它們在內存中(而不是數據庫)查詢,*只*支持文檔中列出的語法。 http://livedocs.adobe.com/coldfusion/8/using_recordsets_3.html。 – Leigh 2010-12-01 16:02:11