Гость
Форумы / Oracle [игнор отключен] [закрыт для гостей] / промежуток дат через N - е количество дней / 11 сообщений из 11, страница 1 из 1
10.06.2019, 10:21
    #39824806
evgenyb84
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
промежуток дат через N - е количество дней
Добрый день! Помогите с решением данного вопроса:
Есть период дат 13.05.2019 - 09.11.2019. Как мне вывести каждый 90-й день ?
...
Рейтинг: 0 / 0
10.06.2019, 10:23
    #39824807
Elic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
промежуток дат через N - е количество дней
evgenyb84каждый 90-й день ?А все умеешь? - RTFM MOD
...
Рейтинг: 0 / 0
10.06.2019, 10:34
    #39824820
evgenyb84
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
промежуток дат через N - е количество дней
Всего не умею, запрос никак не соображу как построить.
...
Рейтинг: 0 / 0
10.06.2019, 10:36
    #39824825
Elic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
промежуток дат через N - е количество дней
...
Рейтинг: 0 / 0
10.06.2019, 10:50
    #39824832
evgenyb84
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
промежуток дат через N - е количество дней
не понимаю ваших ответов

Вывел диапазон дат запросом:

SELECT to_date('09.11.2019', 'dd.mm.yyyy') - level + 1 dat
FROM dual
CONNECT BY level <= to_date('09.11.2019', 'dd.mm.yyyy') - to_date('13.05.2019', 'dd.mm.yyyy') + 1

как выбрать каждый 90-й день
...
Рейтинг: 0 / 0
10.06.2019, 10:54
    #39824834
Dshedoo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
промежуток дат через N - е количество дней
Код: plsql
1.
2.
3.
4.
5.
6.
7.
with q as (select '13.05.2019 - 09.11.2019' as "promeжytok dat" from dual)

select to_date(regexp_substr("promeжytok dat",'\d{2}\.\d{2}\.\d{4}',1,1),'DD.MM.YYYY')+level
, level
from q
where mod(level,90) = 0
connect by to_date(regexp_substr("promeжytok dat",'\d{2}\.\d{2}\.\d{4}',1,1),'DD.MM.YYYY')+level <= to_date(regexp_substr("promeжytok dat",'\d{2}\.\d{2}\.\d{4}',1,2),'DD.MM.YYYY')
...
Рейтинг: 0 / 0
10.06.2019, 12:26
    #39824898
Надфиль
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
промежуток дат через N - е количество дней
Dshedoo,
без reg_exp это, конечно, не написать. :D
...
Рейтинг: 0 / 0
10.06.2019, 12:43
    #39824906
-2-
-2-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
промежуток дат через N - е количество дней
evgenyb84как выбрать каждый 90-й деньИзменить условие и умножить.
...
Рейтинг: 0 / 0
10.06.2019, 13:31
    #39824928
evgenyb84
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
промежуток дат через N - е количество дней
Как это сделать без regexp_substr?
...
Рейтинг: 0 / 0
10.06.2019, 13:44
    #39824934
Да ну
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
промежуток дат через N - е количество дней
evgenyb84не понимаю ваших ответов

Вывел диапазон дат запросом:

SELECT to_date('09.11.2019', 'dd.mm.yyyy') - level + 1 dat
FROM dual
CONNECT BY level <= to_date('09.11.2019', 'dd.mm.yyyy') - to_date('13.05.2019', 'dd.mm.yyyy') + 1

как выбрать каждый 90-й день
Рыба:
Код: plsql
1.
2.
3.
select date'2019-05-13' + level * 90 
from dual
connect by date'2019-05-13' + level * 90 <= date'2019-11-09'
...
Рейтинг: 0 / 0
10.06.2019, 13:59
    #39824944
evgenyb84
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
промежуток дат через N - е количество дней
Спасибо большое!
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / промежуток дат через N - е количество дней / 11 сообщений из 11, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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