2013-07-10 36 views
1

我在玩我的論壇(它是家庭成員,而不是phpbb或任何其他第三方論壇),我想有一種方式來說,「一一年前,你發佈了這個:XXXX「。MySQL獲得最接近1歲的紀錄

問題是,我不知道如何查詢最接近一歲的任何東西。我覺得我需要建立一個計算到查詢,像

僞編碼是這樣的..

SELECT *, ABS(DATE(timestamp-now)) as diff FROM table ORDER BY diff LIMIT 1 - 在DIFF將是我多麼接近能得到這個一年的數學前。

關於如何構造這個的任何建議將會非常有幫助。

回答

1

嘗試

SELECT ABS((curdate() - interval 1 year) - date_column) as diff 
FROM table 
ORDER BY diff 
LIMIT 1 
+1

我最終拉動了一年的秒數,我看到這一點,並得到了它的工作之前,但是這是我花了解決方案。只要表格中有記錄,它會返回一些內容,並且它會始終最接近一歲,然後我可以得到。謝謝!! –