检查现有结果集中是否存在月内所有日期

时间:2016-09-14 15:09:31

标签: mysql date

如何检查每天是否存在每个月的结果集(由最后显示的查询形成)?例如,在以下结果集中:

Date_List
08/01/2016
08/02/2016
08/03/2016
08/04/2016
08/05/2016
08/06/2016
08/07/2016
08/08/2016
08/09/2016
08/10/2016
08/11/2016
08/12/2016
08/13/2016
08/14/2016
08/15/2016
08/16/2016
08/17/2016
08/18/2016
08/19/2016
08/20/2016
08/21/2016
08/22/2016
08/23/2016
08/24/2016
08/25/2016
08/26/2016
08/27/2016
08/28/2016
08/29/2016
08/30/2016
08/31/2016

我们可以看到2016年8月全天候可用。我想只返回这样的几个月(一整天都有),当然还有一年的时间。在这种情况下,返回将是08/16(MM / YYYY)。因此,如果缺少任何一个月的任何一天 - 我不想返回这个月。

以下是我用来形成结果集的查询:

SELECT d.`Date_List` FROM staging_area.`g360_dates_ca` d
LEFT JOIN dm_research_development.g360_pro_saas_availability a
ON d.`Date_List` = a.`DATE_OCCURRED_DATE` AND a.`IS_OUTAGE` = 'YES'
WHERE a.`DATE_OCCURRED_DATE` IS NULL AND STR_TO_DATE(d.`Date_List`,'%m/%d/%Y') <= NOW();

g360_dates_ca表包含从01-01-2013开始至01-01-2018的所有日期。

g360_pro_saas_availability - 是我的事故表,包含详细信息。

0 个答案:

没有答案