SQL查询 - 具有条件的Count(*)

时间:2015-12-05 17:11:58

标签: mysql

所以我是SQL的初学者,我坚持这个查询: “对于事件请求,请列出事件编号,事件日期(eventrequest.dateheld)和事件计划的计数。如果事件请求具有多个具有工作日期的相关事件计划,则仅在结果中包含事件请求在2013年12月。“

表格是:

EVENTREQUEST{EVENTNO(PK),DATEHELD}

EVENTPLAN{PLANO(PK), EVENTNO(FK), WORKDATE}

到目前为止我已经写了这个查询,但我不知道如何继续,我的意思是我们将如何计算2013年12月的workdate事件计划数量?请帮忙!

    Select EVENTNO, EVENTREQUEST.DATEHELD, COUNT(*) 
    from EVENTREQUEST, EVENTPLAN
    where EVENTREQUEST.EVENTNO = EVENTPLAN.EVENTNO;

1 个答案:

答案 0 :(得分:2)

这是你需要的

SELECT COUNT(1) as PLANS, EVENTREQUEST.EVENTNO, DATEHELD
FROM EVENTREQUEST LEFT JOIN EVENTPLAN
ON EVENTREQUEST.EVENTNO = EVENTPLAN.EVENTNO
WHERE EVENTPLAN.WORKDATE BETWEEN '2015-11-30' AND '2015-12-30';