mysql 查詢指定時間段內無活動記錄的表記錄
對于題中提出的問題,需要查詢最近兩個月沒有操作記錄的管理員姓名,可以使用 mysql 中的 not in 子查詢來實現:
select * from admin where id not in ( select distinct admin_id from admin_log where created_at > date_sub(now(), interval 2 month) )
查詢解析
- admin 是需要查詢的表,包含管理員信息。
- admin_log 是管理員操作記錄表。
- created_at 是管理員操作記錄的創建時間。
- date_sub(now(), interval 2 month) 計算出當前時間減去兩個月的時間戳。
- not in 子查詢返回 admin_id 不在最近兩個月有操作記錄的管理員 id 數組。
- 主查詢返回管理員表中 id 不存在于 not in 子查詢結果集中的管理員記錄。
這樣就可以查詢出最近兩個月沒有操作記錄的管理員姓名了。
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END