2017-02-09 82 views
1

我有兩個日期比較從數據庫中獲得的最後10分分鐘的記錄,我使用PostgreSQL,如何比較日期與一個時區,一個沒有時區

我寫此查詢

x_time是沒有時區的時間戳,所以這就是爲什麼我將另一個轉換爲相同的但它不會給出結果。

查詢應寫入最後1分鐘記錄,但我認爲由於時區問題,它沒有給出結果。

我該如何解決這個問題?

+0

我們展示了'選擇MAX(x_time),NOW():: TIMESTAMP無時區x_table'?.. –

+0

這會給下面的結果「2017年2月9日14:41 :11.828966','2017-02-09 05:46:55.253082' –

+0

那麼我想你不應該隱式轉換now() - 只需使用'select * FROM x_table WHERE x_time> =(NOW() - interval'10 minutes' );' –

回答

1

如果x_time是沒有時區的時間戳,則應指定NOW()函數的適當時區。

嘗試

select *FROM x_table WHERE x_time >= (NOW() at time zone '-04' - interval '10 minutes') 
+0

感謝您的幫助,但這不起作用 –

+0

對不起。 '(NOW()在時區'-04' - 間隔'10分鐘')'?現在差不多15點了,我發現你的最高時間(t_time)在幾分鐘前是14:41。 – barbsan

+0

它的工作感謝您的幫助barbsan –