2016-07-27 11 views
-1

私はタイムスタンプ用の列と読み込み用の列を持つPostgresqlデータベースを持っています。私は毎秒いくつかの読みを持っています。私は任意の秒の最高の読書を返すしたいと思います。私は、私が好きなフォーマットでタイムスタンプを抽出し、パワーを抽出するためのクエリを持っていますが、どのようにフィルタリングして最高のパワーリーディングを得るのかはわかりません。例えばPostgreSQLの時系列から最大値を抽出する

[ts1 second = 5] [reading = 3] 
[ts2 second = 5] [reading = 5] 

私は列のすべてのユニーク秒間、[ts2 second = 5] [reading = 5]を返すために、クエリをしたいと思います。

私の問題の一部は、タイムスタンプにミリ秒が含まれていて、2番目にユニークになりたいということです。

+0

これは、max、group by、order byの単純な使い方のようです。あなたの難しいことは何ですか?何を試しましたか? –

+0

@JorgeCampos - 私はそれが簡単であることを知って安心しています、ありがとう。私はまだ実験中です。私はこれまでPostgreSQLで基本クエリを使ってきましたので、これは私のために進んでいます:) –

+0

''あなたのテーブルから2番目の制限で最大(読書)を選択してください.''という命令は必要ありません。 .. –

答えて

1
SELECT "ts2 second" , MAX("reading") 
FROM yourTable 
GROUP BY "ts2 second" 
0
select second, 
     max(reading) 
    from yourtable 
group by second 
limit 1 

limit 1 1つの結果だけを取得することです。

関連する問題