我的意思是,如果我有表是這樣的:如何選擇帶時間戳記錄的記錄?
id | time | name
1 | 1354382314 | test1
2 | 1374769114 | test2
3 | 1322759914 | test3
如何選擇一個記錄,例如,創建一個星期前,一個月前還是年前?是否可能只有mysql
函數或如何在php
中執行?
我的意思是,如果我有表是這樣的:如何選擇帶時間戳記錄的記錄?
id | time | name
1 | 1354382314 | test1
2 | 1374769114 | test2
3 | 1322759914 | test3
如何選擇一個記錄,例如,創建一個星期前,一個月前還是年前?是否可能只有mysql
函數或如何在php
中執行?
我認爲它也可以與MySQL功能
一樣,
select * from table where time > UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 1 WEEK))
select * from table where time > UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 1 YEAR))
select * from table where time > UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 1 MONTH))
由於時間戳是一個數字,總是增長,你可以簡單地計算出你的請求範圍的開始和結束標記,並使用
WHERE `time` >= 'startstamp' AND `time` <= 'endstamp'
爲了得到一個圖章1個星期前,你可以使用PHP functoon strtotime("-1 week")
。與月份類似。
如果您需要任何東西的當前郵票,請使用time()
。
select id,time,name from your_table where (current_timestamp-time)>7*24*60*60;
7 * 24 * 60 * 60代表一個星期