Mysql 需要根据工作日表数据生成缺席报告

Mysql 需要根据工作日表数据生成缺席报告,mysql,Mysql,这是我的第一个问题。所以,如果我问了一些愚蠢的问题,请容忍我 我的mySql数据库中有两个名为“users”、“user\u checkin\u checkout”的表 每次用户登录到网站时,我都会在“user\u checkin\u checkout”表中创建一条新记录,当用户注销时,我会用当前时间更新该记录 表结构: # Users CREATE TABLE IF NOT EXISTS `users` ( `id` int(11) NOT NULL auto_increment,

这是我的第一个问题。所以,如果我问了一些愚蠢的问题,请容忍我

我的mySql数据库中有两个名为“users”、“user\u checkin\u checkout”的表

每次用户登录到网站时,我都会在“user\u checkin\u checkout”表中创建一条新记录,当用户注销时,我会用当前时间更新该记录

表结构:

# Users

CREATE TABLE IF NOT EXISTS `users` (
  `id` int(11) NOT NULL auto_increment,
  `name` varchar(255) NOT NULL,
  `password` varchar(255) NOT NULL,
  `address` varchar(255) NOT NULL,
  `city` varchar(255) NOT NULL,
  `state` varchar(255) NOT NULL,
  `zip` varchar(255) NOT NULL,
  `phone` varchar(255) NOT NULL,
  `email` varchar(255) NOT NULL,
  `last_login` datetime NOT NULL,
  `date_added` datetime NOT NULL,
  `date_modified` datetime NOT NULL,
  PRIMARY KEY  (`id`)
)

# CREATE TABLE IF NOT EXISTS `user_checkin_checkout` (
  `user_id` int(11) NOT NULL,
  `id` int(11) NOT NULL auto_increment,
  `checkin_date` datetime NOT NULL,
  `checkout_date` datetime NOT NULL,
  `checkin_ip_address` varchar(255) NOT NULL,
  `checkout_ip_address` varchar(255) NOT NULL,
  PRIMARY KEY  (`id`)
) 
现在,我需要生成一个报告,以便它以起始日期和截止日期作为参数,我想知道用户何时缺席(未签入)。我正在努力为此生成一个查询。我无法在它们之间使用连接查询,因为这只是在用户实际签入时产生的。我是否应该有另一个表来填充输入日期之间的所有日期,是否应该使用该表的联接?请告知


提前感谢。

您可以在用户签入时获取记录,而不是在用户未签入时获取记录,但您可以通过总计-签入来获取记录是的,我可以在用户签入时获取记录。。但我需要的是当用户没有检查入口时的报告,您有一个checkedin数组,您可以从,from date到todate创建一个数组,然后您可以获得未检查的数组的差异“生成报告”-??@developerCK-假设用户表中有300名员工。如果我使用您的解决方案,我应该迭代所有记录(比如说在一年内它将达到75000条记录),我认为这很乏味。