如何查找 MySQL 中超过指定时段未活跃的记录?

如何查找 mysql 中超过指定时段未活跃的记录?

如何查询 mysql 中超过指定时段未活跃的记录?

对于初学者来说,如何编写 sql 语句来查询一段时间内未执行特定操作的特定记录可能是具有挑战性的。下面提供一种 mysql 查询,可帮助你解决这个问题。

查询语句:

select * from admin where id not in (select distinct admin_id from admin_log where  created_at > date_sub(now(),interval 2 month)

查询说明:

  • select * from admin: 选择 "admin" 表中的所有列。
  • where id not in ( ... ): 排除符合子查询中条件的记录。
  • select distinct admin_id from admin_log: 从 "admin_log" 表中选择不同的 "admin_id"。
  • where created_at > date_sub(now(),interval 2 month): 在过去两个月内具有 "created_at" 值的记录。

此查询将从 "admin" 表中选择所有不属于在过去两个月内记录了操作的 "admin_id" 的记录。根据你的示例,这意味着它将选择名为 "小明" 的管理员,他们最近两个月没有执行任何操作。

请注意,此查询需要一个名为 "admin_log" 的表,其中存储了管理员的操作记录,包括 "created_at" 时间戳列。

以上就是如何查找 MySQL 中超过指定时段未活跃的记录?的详细内容,更多请关注其它相关文章!