SQL查找缺少的日期范围

尼科

我有一张桌子,可以容纳一年中的所有天/月

例如

Day      Month
1         9
2         9
3         9
4         9
5         9
6         9
7         9
...       ...

我有一张表格,显示来自不同数据集的日期范围

例如

 DataSet    DateRange
webshop 2013-09-20
webshop 2013-09-21
webshop 2013-09-22
webshop 2013-09-23
webshop 2013-09-24
webshop 2013-09-25
webshop 2013-09-26
webshop 2013-09-27
webshop 2013-09-28
webshop 2013-09-29
webshop 2013-09-30

我如何比较这两个表以显示该特定月份的数据集中缺少哪些日期

对于上面示例中的数据集所在的EG,webshop缺少日期范围01/09/2013-19/09/2013

谢谢你的帮助!

Deepshikha

您可以使用CTE并通过以下方式编写查询:

declare @StartDate DATE, @EndDate DATE
set @StartDate = '2013-09-01';
set @EndDate = '2013-09-30';

  WITH DateRange(Date) AS
     (
         SELECT
             @StartDate Date
         UNION ALL
         SELECT
             DATEADD(day, 1, Date) Date
         FROM
             DateRange
         WHERE
             Date < @EndDate
     )

     SELECT 'webshop',Date 
     FROM DateRange
     EXCEPT 
     SELECT DataSet,DateRange
     FROM ImportedDateRange
     WHERE DataSet='webshop'
     --You could remove Maximum Recursion level constraint by specifying a MaxRecusion of zero
     OPTION (MaxRecursion 10000);

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Linq查询以查找日期范围

来自分类Dev

查找日期范围之间的记录

来自分类Dev

MySQL查找缺少的日期范围

来自分类Dev

查找缺少的日期(PostgreSQL)

来自分类Dev

查找日期范围内的可用日期

来自分类Dev

查找与日期范围相比缺少的日期

来自分类Dev

缺少日期范围维度

来自分类Dev

如何使用SQL从有效的日期表中查找没有数据的日期范围?

来自分类Dev

Linq查询以查找日期范围

来自分类Dev

查找日期范围之间的记录

来自分类Dev

SQL根据另一个表中的日期范围查找日期在表中的位置

来自分类Dev

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

来自分类Dev

从日期范围查找可用的房间

来自分类Dev

Oracle SQL中的连续和非连续日期范围:查找最早的日期

来自分类Dev

SQL查询以查找当前活动日期范围或上次通过的日期范围

来自分类Dev

如何从哈希范围中获取缺少的日期

来自分类Dev

使用日期范围查找日期范围的SQL

来自分类Dev

查找日期范围内的可用日期

来自分类Dev

查找我的SQL表中可用的日期范围

来自分类Dev

SQL查询按日期范围查找介于两个日期之间的所有数据

来自分类Dev

查找日期在范围内

来自分类Dev

SQL获取日期范围

来自分类Dev

查找缺少的元素SQL

来自分类Dev

根据日期范围查找记录

来自分类Dev

SQL 查找日期是否在一个范围内

来自分类Dev

SQL 在 31 天的时间范围内查找日期

来自分类Dev

查找日期范围之间的事件

来自分类Dev

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

来自分类Dev

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