我想列出90天內未登錄的成員。在MySQL中,我有一個 last_access列,每次用戶登錄時都會更新。所以我認爲可以在此列上執行檢查。列格式爲:date("Y/m/d : H:i:s", time())
(2011/05/10:21:42:33)php sql檢查非活動用戶
什麼是適當的SQL查詢使用?
我想列出90天內未登錄的成員。在MySQL中,我有一個 last_access列,每次用戶登錄時都會更新。所以我認爲可以在此列上執行檢查。列格式爲:date("Y/m/d : H:i:s", time())
(2011/05/10:21:42:33)php sql檢查非活動用戶
什麼是適當的SQL查詢使用?
SELECT username
FROM users
WHERE DATEDIFF(NOW(),last_access)>90
這假定'last_access'是一個具有適當日期/時間類型的列,如果情況並非如此,如果@Zero實際上使用了一個字符串,那麼建議修復列類型而不是實施解決方法。 – 2011-05-11 11:45:40
我完全同意。 – garnertb 2011-05-11 12:01:26
SELECT columns
FROM table
WHERE last_access < CURRENT_TIMESTAMP - INTERVAL 90 DAY
爲什麼使用非標準日期格式?您應該在INT列或DATETIME列中真正使用UNIX時間戳。 – ThiefMaster 2011-05-11 11:31:36
該值存儲在哪個字段中? – 2011-05-11 11:44:06
不要告訴我們您將日期存儲在* readability *的varchar列中。 – 2011-05-11 11:46:47