查找日期范围之间的丢失记录

缺口

在巨大的存储过程(在SQL Server中)的最后,我创建了两个CTE。一种带有某些日期范围(每6个月间隔一次),另一种带有某些记录。假设我表B的日期范围是2020年1月1日至2010年1月1日(间隔为6个月)

Start        End
----------------------
2020-01-01 | 2020-07-01
...     ...
other years here
...     ...
2010-01-01 | 2010-07-01

在表A中,这种情况:

Name     Date
-----------------
John    2020-01-01
John    2019-01-01
John    2018-07-01
...     ...
Rob     2020-01-01
Rob     2019-07-01
Rob     2018-07-01
...     ...

我正在尝试生成一个这样的记录集:

Name   MissingDate
-----------------
John    2019-07-01
...     ...
John    2010-01-01

Rob     2019-01-01
...     ...
Rob     2010-01-01

我得了流感,现在我几乎不知道自己是谁,我希望情况很清楚,如果有人可以帮助我,我将非常感激。

戈登·利诺夫

如果您想缺少日期(似乎是按月),则生成所有可用日期并取出您所拥有的日期。

with cte as (
      select start, end
      from dateranges
      union all
      select dateadd(month, 1, start), end
      from cte
      where start < end
    )
select n.name, cte.start
from cte cross join
     (select distinct name from tablea) n left join
     tablea a
     on a.date = cte.start and a.name = n.name
where a.date is null;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

查找日期范围之间的记录

来自分类Dev

查找日期范围之间的记录

来自分类Dev

查找跨越记录的日期范围之间的差距

来自分类Dev

如何查找特定日期范围之间的丢失文件?

来自分类Dev

根据日期范围查找记录

来自分类Dev

查找日期范围之间的事件

来自分类Dev

在SQL中查找日期范围重叠的记录

来自分类Dev

查找范围之间的记录-SAILS.JS

来自分类Dev

查找在日期范围之间创建的文件

来自分类Dev

查找两个日期之间的记录

来自分类Dev

SQL查找丢失的记录

来自分类Dev

Mysql:获取多个日期范围之间的分段记录

来自分类Dev

获取两个日期范围之间的记录

来自分类Dev

在MYSQL中获取两个日期范围之间的记录

来自分类Dev

HQL / JPA查找日期范围之间的可用项目

来自分类Dev

更改 sql 查询以查找日期范围之间的数据

来自分类Dev

查找 SQL Server 2008 中用户的日期范围之间的差距

来自分类Dev

如何查找两个日期之间的特定记录

来自分类Dev

SQL Server查找两个日期之间的记录

来自分类Dev

Access SQL:如何查找日期之间的重复记录

来自分类Dev

SQL Server:查找两个日期之间的记录

来自分类Dev

TSQL:查找所需的丢失记录

来自分类Dev

查找丢失和乱序的记录

来自分类Dev

如何在Oracle SQL中查找日期范围内的丢失数据

来自分类Dev

在PHP中查找丢失的日期

来自分类Dev

按日期查找丢失的条目

来自分类Dev

在php中查找丢失的日期

来自分类Dev

如何选择在日期范围之间的单独表中没有日期记录的服务器?

来自分类Dev

如果两个日期范围之间的日期记录不匹配,则打印零