Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何查询mysql表中的缺勤情况?_Mysql_Sql - Fatal编程技术网

如何查询mysql表中的缺勤情况?

如何查询mysql表中的缺勤情况?,mysql,sql,Mysql,Sql,我有3个表,学习者表有学习者信息,站点表有学习者参加的站点信息,考勤表有每个用户每天的时钟记录 考勤表与(id_编号)连接到学习者表。 学习者表与(site_id)连接到site表 我有以下表格: 学习者 |---------------------|--------|--------------|-------------| | id_number |site_id | fname | lname | |---------------------|

我有3个表,学习者表有学习者信息,站点表有学习者参加的站点信息,考勤表有每个用户每天的时钟记录

考勤表与(id_编号)连接到学习者表。 学习者表与(site_id)连接到site表

我有以下表格:

学习者

|---------------------|--------|--------------|-------------|
|      id_number      |site_id |   fname      |   lname     |
|---------------------|--------|--------------|-------------|
|          552        |    1   |     John     |    Doe      |
|---------------------|--------|--------------|-------------|
|          887        |    2   |    Peter     |    Doe      |
|---------------------|--------|--------------|-------------|
|          567        |    2   |     Mary     |    Doe      |
|---------------------|--------|--------------|-------------|
站点

|---------------------|------------------|
|      site_id        |     Site_name    |
|---------------------|------------------|
|         1           |        Denver    |
|---------------------|------------------|
|          2          |        Texas     |
|---------------------|------------------|
出勤率

|---------------------|------------------|
|      id_number      |       date       |
|---------------------|------------------|
|         552         |    2018-06-05    |
|---------------------|------------------|
|          887        |   2018-06-05     |
|---------------------|------------------|
代码:


需要帮助才能得到缺少的记录,然后数一数。

我不知道你想说什么。请调整您的格式。您预期的结果是什么?将
考勤
加入
学习者
只会返回参加
考勤
的学习者。然后添加
其中learner.id\u number不在…
将过滤掉它们,因此您将得到一个空的result.format更新。预期结果是只看到所选日期范围内的考勤表中没有的学习者。@Keith您需要知道他们缺席的日期,还是只知道日期范围内缺席的天数?
SELECT fname , lname, attendance.id_number , site_name , attendance.date 
FROM attendance 
JOIN learner on attendance.id_number = learner.id_number  
JOIN site ON learner.site_id=site.siteid 
WHERE learner.id_number NOT IN (
    SELECT attendance.id_number 
    FROM attendance 
    WHERE date BETWEEN '2018-06-01' AND '2018-06-05' ) 
ORDER BY learner.site_id ASC