タイムスタンプ列を作成したdbテーブルがあります。現在のタイムスタンプの3日前に作成されたpostgress dbからすべてのレコードを取得したいのですが、別の制約はステータスという別の列です。 PKがタイムスタンプ、ステータス、およびIDであるので、複数のステータスがあり、タイムスタンプが作成される可能性があります。現在のタイムスタンプの3日前に最後に挿入されたIDだけを取得したい。たとえば :タイムスタンプ付きで正確に3日前にデータを取得するようにクエリを選択
-----id------------timestamp--------------------------status------------col3------
.....111...............2017-10-05 10:42:23..............A..........
.....111...............2017-10-05 12:42:23..............X..........
.....111...............2017-10-05 18:42:23..............X..........
.....222...............2017-10-05 11:42:23..............A..........
.....222...............2017-10-05 13:42:23..............X..........
.....222...............2017-10-07 18:42:23..............X..........
ID 111は、最後のレコードが正確に3日現在のタイムスタンプが、222の前に挿入されたので、私は、私は最後のエントリがちょうど挿入されたとして、それを選択することがしたいものではありません取得したいものです現在のタイムスタンプの1日前に222の最初のレコードが3日前に挿入されました。改訂された質問については
where created_timestamp < current_timestamp - interval '3 day'
、それはこのようなものであるように見えるでしょう: は申し訳ありませんが、私はちょうどinterval
算術を使用し、ここで
あなたはどのような手段 "を正確に3日前に" 明確にしないでください。私は一番近いマイクロ秒ですか? –
現在のタイムスタンプが2017-10-08 19:42:23の場合、3日前に手段2017-10-05 19:42:23 – user123475