ORACLE SQL группа по датам, которые выключены на день - PullRequest
0 голосов
/ 15 октября 2019

Я пытаюсь сгруппировать по датам, которые отключены на один день.

EX: 19.02.2009 и 20.02.2009 будут сгруппированы вместе. Для контекста я использую это в выражении group by. Можно ли использовать что-то вроде Datediff и иметь равное 1? Был в поиске, но не могу найти что-нибудь подходящее.

Ответы [ 2 ]

0 голосов
/ 15 октября 2019

Это возможно, если у вас есть начальный день.

Один такой случай, когда я работал, требовалось сгруппировать такие даты, начиная с даты начала месяца.

Select count(1) as cnt -- or whatever your logic is
From your_table
Group by trunc(yourdate, 'month'),
Ceil(Extract(day from yourdate)/2);

Это уйдет31-го числа любого месяца в одной группе. Но да, ваши 19 и 20 даты будут в одной группе.

Приветствия !!

0 голосов
/ 15 октября 2019

Это то, что вы хотите?

   Select date-t1.date, 
     count(*) 
        from(Select date 
       from table) t1
         where date<>t1.date 
        and date-t1.date=1
         group by
       date-t1.date ;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...