2013-02-02 49 views
1

我有一個表,大約30列。它被幾個不同的PHP頁面使用。我應該如何修改工作表並添加一列來跟蹤時間?

我將爲此表添加時間列。在查詢中不會選擇3個月或之前發佈的行。

因此,我的想法很少。

  1. 使用INT添加「timestamp」列,使用PHP microtime()進行計算。
  2. 依靠PHP的日期函數。
  3. 在MySQL本身處理這個過程。

    • 我正要使用第一個選項,因爲它很容易維護整數。
    • 我總是擔心PHP的日期函數的標準化,所以以前從不依賴它們。例如,在一張桌子上,我可以做12.12.2012,在另一張桌子上,我可以做12.12.2012 13:00或類似的事情。
    • 在網站上共享主機上運行,​​所以在未來我可能會移動另一個託管和我不知道「導出嚮導」還出口這些預設值/觸發器等

總之,你會如何做到這一點?你還有什麼可以向我建議的嗎?

+0

爲什麼不'DATETIME'? – hjpotter92

+1

您已經詳細列出瞭解決方案,但不清楚該問題。請你可以更多地解釋用例。 –

+0

我有一張表,用戶發表評論。我需要追蹤過去3個月發佈的評論,因此我可以將它們設置爲「新評論」,其他評論爲「舊評論」。實際上它非常簡單。 –

回答

3

我認爲如果MySQL做的一切都會更好。

會像下面的工作?

SELECT * 
FROM table_name 
WHERE timestamp_column >= UNIX_TIMESTAMP(NOW()) - 60 * 60 * 24 * 90 
+0

我應該將時間戳內的時間戳保存爲INT嗎? –

+0

是的,我建議你跟1)一起去,所以你肯定會想要這樣做。 – nbrogi

相關問題