2016-05-16 260 views
-1

我需要一些幫助與時間戳postgresql。我有一個名爲download_at的時區的時間戳列,用於下載用戶的應用程序和列號爲user_id的整數。我試圖提取在過去60天信息的最後168小時內下載的用戶的用戶ID。我對於如何處理這件事感到有些困惑,並且因爲兩個不同的時間而感到困惑。我相信我可能不得不玩trunc功能,但感覺有點卡住了。時間戳查詢小時

+0

你能說清楚你從'過去60天的信息?一些示例數據結構將會有所幫助。 –

+0

嗯,它只是說在下載168小時內獲得用戶在過去60天的應用程序的信息。 – Richard

回答

0

一個基本的例子:

SELECT * 
FROM table1 
WHERE download_at > now() - '186 hours'::interval 

的Postgres是在處理日期和時間驚人。這是做什麼的細目:

now() --function that returns the current time as a datetime object 

'186 hours'::interval --a string cast to an interval 

在postgres ::確實鑄造。在轉換爲間隔時,Postgres會將格式化的英文轉換爲間隔對象。既然你可以減去日期時間和間隔對象,它會爲你做剩下的事情。