MySQL查询以获取where子句

时间:2017-03-02 04:40:58

标签: mysql sql

这个MySQL查询是从两个表exam_datessection_strength获取数据并加入它们以获得在3月季度完成考试的部分人员总数:

select s.section, count(section), r.strength 
from exam_dates s 
  left join section_strength r 
    on s.section=r.section_name 
where s.semester_exam between '2017-01-01' and '2017-03-31' 
group by s.section

但是此查询仅显示在3月季度完成考试的那些部分名称。我想要左侧各部分的名称和下一栏完成的人数,然后是该部分的强度。

第一个表包含=>学生完成“关于某某日期”考试的详细信息 例如:

ID | personal_no | SECTION_NAME | semester_dates

1 | 777878 | hrm | 2017-01-12

2 | 748587 |它| 2017-05-10

另一张具有各个部分强度的表:

id | section_name | strength

1 | hrm | 10

2 |它| 15

现在我希望我的查询在左侧显示所有部分名称的结果,然后在3月季度完成学生完成测试,然后是该部分的总强度。 例如。

ID | SECTION_NAME | total_completed |强度

1 | hrm | 2 | 10

2 |它| 5 | 15

1 个答案:

答案 0 :(得分:-1)

您的第二个约会是在您的第一次约会之前。尝试颠倒日期的顺序:

select s.section, count(section), r.strength
from exam_dates s
left join section_strength r on s.section=r.section_name
where s.semester_exam between '2017-03-31' and '2017-01-01'
group by s.section