2014-01-06 68 views
0

我正在嘗試從相對於NOW 1個月大的表中提取記錄。這似乎很容易與SQL日期如表:WHERE DocDate>=CURDATE() - INTERVAL 1 MONTHSQL - 使用unix時間戳在特定時間段內選擇記錄?

但是在這個表中的日期表示爲unix時間戳,這似乎並不簡單。到目前爲止,我已經測試了以下:

SELECT articleviewed, COUNT(articleviewed) AS Viewed, articleviewedtitle, timestampx 
FROM swdata.uos_swkb_stats_views 
WHERE timestampx <= CURRENT_TIMESTAMP AND timestampx >= 1389004991 
GROUP BY articleviewed 
ORDER BY Viewed DESC 

這是確定的,但我需要timestampx >= 1389004991是相對於NOW

以下一代產量不正確的結果或

WHERE timestampx <= CURRENT_TIMESTAMP AND timestampx >= CURRENT_TIMESTAMP - 1 MONTH 
WHERE timestampx <= CURRENT_TIMESTAMP - INTERVAL 1 MONTH 

一位同事提供了以下解決方案,這似乎工作確定,顯然我需要轉換不正確的語法/如下定義的時間戳。

WHERE timestampx> =(UNIX_TIMESTAMP(CURDATE() - INTERVAL 1個月))

+0

而你的數據庫引擎,...? –

+0

mySQL,對不起,我是一個nubie棧和編程。 – user3165361

回答