私のテーブル(例)
id - console - zone - timestamp - temp
1 - 1 - 1 - 12:00 - 123
2 - 1 - 1 - 12:01 - 234
3 - 1 - 1 - 12:02 - 236
4 - 2 - 1 - 12:01 - 567
5 - 2 - 1 - 12:02 - 657
6 - 1 - 2 - 12:00 - 864
7 - 1 - 2 - 12:02 - 436
私のテーブルは、さまざまな機器からの新しいデータで30〜45秒ごとに更新されます。私の目標は、各コンソール+ゾーンのテーブルをクエリして、最新の一時エントリを取得することです(このテーブルは自動インクリメントされるため、idから実行できます)
理想的な出力は(例)
id - console - zone - timestamp - temp
3 - 1 - 1 - 12:02 - 236
5 - 2 - 1 - 12:02 - 657
7 - 1 - 2 - 12:02 - 436
クエリで使用しようとしmax()
ましたが、期待どおりに機能していません。IDの最大値を取得していますが、その行の温度は取得していません
select max(id), console, zone, timestamp, temp from TABLE group by console, zone order by console, zone;
上記のクエリは正しい数のエントリを返しますが、前述したように、tempは正しくありません。私は常にコンソールとゾーンのテーブルに入力された最初の臨時雇用者を取得します。私はかなり見てきましたが、どの質問をするべきかわからないか、答えが非常に単純で、神々の娯楽のために私を逃れています。