php sql检查非活动用户

php sql检查非活动用户,php,sql,Php,Sql,我想列出90天内没有登录的会员。在mysql中,我有一个 上次访问列,每次用户登录时更新。因此,我认为可以对该列进行检查。列格式为:date(“Y/m/d:H:i:s”,time())(2011/05/10:21:42:33) 使用什么样的SQL查询比较合适?选择列 SELECT username FROM users WHERE DATEDIFF(NOW(),last_access)>90 从桌子上 其中上次访问

我想列出90天内没有登录的会员。在mysql中,我有一个 上次访问列,每次用户登录时更新。因此,我认为可以对该列进行检查。列格式为:
date(“Y/m/d:H:i:s”,time())
(2011/05/10:21:42:33)

使用什么样的SQL查询比较合适?

选择列
SELECT username
FROM users
WHERE DATEDIFF(NOW(),last_access)>90
从桌子上 其中上次访问<当前时间戳-间隔90天
为什么使用非标准日期格式?你真的应该在INT列或DATETIME列中使用UNIX时间戳。这个值存储在什么类型的字段中?不要告诉我们你将日期存储在varchar列中是为了可读性。好的,我想我可以调整我的查询以使用varchar,但仍然有关于将字段和数据转换为DATETIME类型的计划吗?是的,我将其转换为datetime(
last\u access
datetime NOT NULL默认值“0000-00-00 00:00:00”),并使用now()将日期立即存储(插入到成员(user,pass,last\u access)值($username,$pass,now())这假设
last\u access
是一个具有正确日期/时间类型的列。如果不是这样,如果@Zero实际使用了他建议的字符串,建议修复该列类型,而不是实施变通方法。
SELECT columns
FROM table
WHERE last_access < CURRENT_TIMESTAMP - INTERVAL 90 DAY