2012-10-29 43 views
2

我在我的數據庫中有一個表,它定期收集信息。有一個序列號列(SN)和日期列(ReadDate)以及每行8個通道列(ch1-ch8)。我想在一個查詢中獲取每個序列號的所有最新通道值。現在我的查詢確實獲取了所有序列號的所有通道。唯一的問題是我沒有得到最新的值,它看起來像抓住了第一行。MySQL在一個查詢中用於多個鍵的最新行

我已經把什麼我試圖做起來就sqlfiddle http://sqlfiddle.com/#!2/313cf/2

任何想法是什麼我必須做的,以獲得最新的信道值,每個序列號的例子嗎?

回答

2
SELECT a.* 
FROM dials a INNER JOIN 
     (
      SELECT SN, MAX(RealReadDate) maxDate 
      FROM dials 
      GROUP BY SN 
     ) b ON a.SN = b.SN AND 
       a.RealReadDate = b.maxDATE 

SQLFiddle Demo

+0

真棒,謝謝!那樣做了! –

相關問題