(抱歉英语不好,技能不好)你好!我有一个 mysql 数据库,其中包含四列和一个 cron 作业作为脚本,它每 10 分钟请求一次用户的状态。数据库列:
ID UID STATUS CHECK_AT
- ID - 只是一个序列号(1、2、3 等)。每次脚本将某些内容写入数据库时,数字都会增加。
- UID - 键值。假设它是用户的 ID。所有数据库包含大约 3-5 个不同的 UID
- STATUS - 值为 1 或 0。假设 1 在线,0 离线。在线状态超时为 10 分钟。
- CHECK_AT - 脚本工作的时间和日期,例如 2013-10-01 00:30:01
逻辑:每 10 分钟脚本检查在线 (1) 或离线 (0) 的特定 UID(写在其他表中)。我正在尝试做的事情:输出特定UID一天的摘要在线时间;星期; 月等
我想它应该是基本的,比如
select count(id) from DB_NAME where date(check_at) = '2013-10-01';
一日
select count(uid) from user_activity where date(check_at) between '2013-10-01' and '2013-10-07';
几天等等。
但是,我的技能太低了,我怎么能只计算约会的在线时间(状态=1)。请给我一些建议好吗?