我有兩個表格,其結構相同,每5分鐘捕獲3行數據。由此,我試圖使用T1的最大合計值每天檢索一行。例如,MySQL - 根據一個表的MAX(聚合值)從兩個表中檢索一行
T1
dateTime |名稱|值
2011-06-05 00:00:00 |約翰尼| 20
2011-06-05 00:00:00 |羅伯特| 30
2011-06-05 00:00:00 |勞倫| 24
2011-06-05 00:00:05 |約翰尼| 12
2011-06-05 00:00:05 |羅伯特| 10
2011-06-05 00:00:05 |勞倫| 10
...
2011-06-06 00:00:00 | etc
T2
dateTime |名稱|值
2011-06-05 00:00:00 |約翰尼| 8
2011-06-05 00:00:00 |羅伯特| 12
2011-06-05 00:00:00 |勞倫| 24
2011-06-05 00:00:05 |約翰尼| 52
2011-06-05 00:00:05 |羅伯特| 16
2011-06-05 00:00:05 |勞倫| 25
...
2011-06-06 00:00:00 |等
在上面的例子中,T1的聚集前3行比第二組3行(12 + 10 + 10)具有更高的值(20 + 30 + 24)。一旦我建立了哪個時間戳具有來自T1的最高(MAX)聚合值,我想從T2獲取相對聚合值。在這種情況下,它將在00:00:00的值爲8 + 12 + 24。請注意,這將持續數天,因此所需輸出爲:
dateTime | T1AggregatedValues | T2AggregatedValues
2011-06-05 00:00:00 | 74 | 44
2011-06-06 xTime | y | z
2011-06-07 xTime | y | z
我試過使用SELECT * FROM T1 WHERE value=(SELECT MAX(value) FROM T1)
作爲起點,但這只是給了我一個T1的最大值。我對如何進步感到非常失望?
在第二個查詢中,ORDER BY不是必需的,但我將其留在了第2個查詢與第1個查詢相關的方面,即第1個查詢在第2個查詢中扮演子查詢的角色。 – 2011-06-09 20:46:39
感謝您的幫助 - 我99.9%確信在計算總量時不會存在聯繫。再次感謝。 – cbros2008 2011-06-10 09:50:34