Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / расчет количества дней задолженности / 7 сообщений из 7, страница 1 из 1
04.01.2018, 14:07
    #39579348
Denis1980
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
расчет количества дней задолженности
Добрый день.
Простите если запрос повторился. мне не удалось найти ответ на него.
помогите создать запрос суть которого посчитать количество дней существования суммы которая есть на сейчас.
Суть таблицы:
дата сумма
11.06.2017 80
12.06.2017 80
13.06.2017 50
14.06.2017 50
15.06.2017 50
16.06.2017 80
17.06.2017 80
18.06.2017 80
19.06.2017 80
20.06.2017 80


результат должен быть 5 дней. сложность в том что сумма 80 встерачется больше одного раза в дневном периоде.
...
Рейтинг: 0 / 0
04.01.2018, 14:24
    #39579360
Elic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
расчет количества дней задолженности
STFF start_of_group
...
Рейтинг: 0 / 0
04.01.2018, 14:32
    #39579365
Denis1980
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
расчет количества дней задолженности
А не затруднит пример кода показать?
...
Рейтинг: 0 / 0
04.01.2018, 14:45
    #39579370
Elic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
расчет количества дней задолженности
...
Рейтинг: 0 / 0
04.01.2018, 14:53
    #39579374
Denis1980
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
расчет количества дней задолженности
спасибо :)
...
Рейтинг: 0 / 0
04.01.2018, 15:01
    #39579378
Stax
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
расчет количества дней задолженности
Denis1980,
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
SQL> ed
Wrote file afiedt.buf

  1  with t (d,s) as (
  2  select to_date('11.06.2017','dd.mm.yyyy'), 80 from dual union all
  3  select to_date('12.06.2017','dd.mm.yyyy'), 80 from dual union all
  4  select to_date('13.06.2017','dd.mm.yyyy'), 50 from dual union all
  5  select to_date('14.06.2017','dd.mm.yyyy'), 50 from dual union all
  6  select to_date('15.06.2017','dd.mm.yyyy'), 50 from dual union all
  7  select to_date('16.06.2017','dd.mm.yyyy'), 80 from dual union all
  8  select to_date('17.06.2017','dd.mm.yyyy'), 80 from dual union all
  9  select to_date('18.06.2017','dd.mm.yyyy'), 80 from dual union all
 10  select to_date('19.06.2017','dd.mm.yyyy'), 80 from dual union all
 11  select to_date('20.06.2017','dd.mm.yyyy'), 80 from dual)
 12  ,tt as (
 13  select t.*
 14  ,row_number() over (order by d desc)
 15  -row_number() over (partition by s order by d desc) gr
 16  from t
 17  )
 18* select max(d)-min(d)+1 delta from tt where gr=0
SQL> /

     DELTA
----------
         5



.....
stax
...
Рейтинг: 0 / 0
04.01.2018, 15:09
    #39579380
12Cтульев
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
расчет количества дней задолженности
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
select max(дата_с), max(дата_по)
from таблица 
match_recognize( 
   order by дата desc 
   measures
       last(дата) as дата_с,
       first(дата) as дата_по
   pattern (серия+)
   define серия as сумма=first(сумма)
);
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / расчет количества дней задолженности / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]