2016-11-09 69 views
0

我目前有:选择和计算结果群里今天和本周日是

SELECT *, COUNT(*) AS counter 
FROM Events 
WHERE TO_DAYS(EventDate) - TO_DAYS(NOW()) >= 7; 
ORDER BY EventDate 

但我想要做的是只计算结果即将推出,并显示有多少是今天有多少在当前一周中,不是7天,而是实际的周一至周日工作周。这是可能的1查询?

+0

请参阅http://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve-for-what-seems-to-me-to-be-a-very-simple- sql-query – Strawberry

回答

1
SELECT *, (
      SELECT COUNT(*) FROM events WHERE WEEK(EventDate) = WEEK(NOW()) 
     ) as counter 
FROM events 
ORDER BY EventDate 

试试这个,希望它会选择所有的信息,然后作为子查询计算一周的总事件。

+0

我该如何着手显示与今天/本周相关的计数结果?顺便说一句,你在ORDER BY上有一个错字。 – BN83

+0

您应该能够通过查看查询结果中的计数器变量来获得结果。你能看到你期望看到的其他结果吗? – Blinkydamo

+0

不幸的是没有结果。编辑:刚刚删除WHERE DATE(EventDate)= DATE(NOW()),它显示了一个结果,但显然这并不理想。 – BN83

相关问题