2010-06-18 51 views
6

所以我想獲得最近的日期,最大(asofdate)的行,但我是MySQL文盲,似乎無法得到它。我的頭 select * from Reports.InternalLoanExposureFlat其中asofdate = max(asofdate)似乎有意義,但控制檯似乎不同意我。SQL Max問題

在此先感謝。

回答

3

嘗試:

SELECT * FROM Reports.InternalLoanExposureFlat 
WHERE asofdate = (SELECT MAX(asofdate) FROM Reports.InternalLoanExposureFlat) 
+1

這是發現人(asofdate)的正確方法! – 2010-06-19 18:53:53

+0

如果幾行包含'asofdate'等於'MAX(asofdate)'? – zerkms 2010-06-29 14:11:17

+0

然後你會得到他們。 – gkrogers 2010-06-29 16:11:47

0

我與控制檯;-)同意。

max函數返回一個組或整個表的最大值。

嘗試:

SELECT somecolumn, MAX(asofdate) FROM mytable GROUP BY somecolumn 

SELECT MAX(asofdate) FROM mytable 
9

如果你不想返回多個結果的風險,那麼你應該這樣做:

SELECT * 
FROM Reports.InternalLoanExposureFlat 
ORDER BY asofdate DESC 
LIMIT 1 
+0

尋找最大值(asofdate)的昂貴方法! – 2010-06-19 18:53:06

+0

@弗蘭克電腦:他沒有說他想得到最大(asofdate),他說要得到最新的日期。 – 2010-06-20 01:04:38

+0

當我讀到他的問題時,他明確指出max(asofdate) – 2010-06-20 03:59:03