我有一個看起來像一個表關係返回列第一行數據未在以下組:聚合函數由
barn
------
PK barn_id
<other columns>
stable
---------
PK stable_id
FK barn_id
stable_number
stable_contents
timestamp
所以每當我只是把一個新行具有穩定的內容改變具有新的stable_contents和當前時間戳的相應的barn_id和stable_number。
這些表格是這樣設計的,所以我可以看看一個穩定的,看到它的整個歷史。
我想寫一個查詢,會發現我所有的馬廄的當前狀態中的所有穀倉,所以我試試這個:
SELECT barn_id, stable_number, max(timestamp), stable_contents
FROM stable
GROUP BY barn_id, stable_number
在我的測試數據我有這樣的一些行穀倉1,穩定的7
1 | 7 | 2009-12-09 10:00:00 | empty
1 | 7 | 2009-12-10 10:30:00 | show horse
如果我運行上面的SELECT
查詢,我得到了穀倉1以下返回行,穩定的7:
1 | 7 | 2009-12-10 10:30:00 | empty
它獲得正確的最大時間戳,只是錯誤的stable_contents。
任何想法?
我選擇這一個,因爲替代形式移植到了很好的HQL。感謝所有提交。 – TheBigS 2009-12-10 18:06:54