Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Генерация календаря по двум датам  [new]
onyx2012
Member

Откуда:
Сообщений: 130
Недавно столкнулся с такой нетривиальной задачей: имеются две даты (начальная и конечная), исходя из которых требуется получить кол-во полей, равное количеству дней между датами.

Например, из двух дат 15.07.2011 и 15.09.2011, запрос должен вернуть поля вида

15.07.2011 | 16.07.2011 | 17.07.2011 18.07.2011 | ............. 13.09.2011 | 14.09.2011 | 15.09.2011

Вроде есть идеи в голове, но с какого бока подступиться не знаю.
Может кто подскажет, каким алгоритмом это проще всего реализовать?
Спасибо!
6 сен 11, 15:35    [11235347]     Ответить | Цитировать Сообщить модератору
 Re: Генерация календаря по двум датам  [new]
orawish
Member

Откуда: Гадюкино-2 (City)
Сообщений: 15487
onyx2012,

топ популярных посмотрите
и в поиск - по контексту календарь/календарик
6 сен 11, 15:41    [11235412]     Ответить | Цитировать Сообщить модератору
 Re: Генерация календаря по двум датам  [new]
env
Member

Откуда: Россия, Москва
Сообщений: 6697
onyx2012,

странное желание, количество полей ограниченная величина
6 сен 11, 16:01    [11235681]     Ответить | Цитировать Сообщить модератору
 Re: Генерация календаря по двум датам  [new]
AlexFF__|
Member

Откуда:
Сообщений: 2852
onyx2012
...
Вроде есть идеи в голове, но с какого бока подступиться не знаю...

Идея тут только одна: динамический SQL.
6 сен 11, 16:08    [11235787]     Ответить | Цитировать Сообщить модератору
 Re: Генерация календаря по двум датам  [new]
env
Member

Откуда: Россия, Москва
Сообщений: 6697
AlexFF__|,

Необязательно, вполне может быть, что разворачивание в столбцы дешевле делать на клиенте, отображающим результат выборки.
Динамический набор столбцов-дат в таблице/вьюхе дурно попахивает.
6 сен 11, 16:23    [11235978]     Ответить | Цитировать Сообщить модератору
 Re: Генерация календаря по двум датам  [new]
AlexFF__|
Member

Откуда:
Сообщений: 2852
env,

Вручную лопатить кучу данных?
Можно конечно =)
6 сен 11, 16:40    [11236139]     Ответить | Цитировать Сообщить модератору
 Re: Генерация календаря по двум датам  [new]
env
Member

Откуда: Россия, Москва
Сообщений: 6697
AlexFF__|,

Если клиент - отчётная система (CR,FR,MS RS и т.д.), то транспонировать строки по столбцам проще в нём.
6 сен 11, 16:45    [11236180]     Ответить | Цитировать Сообщить модератору
 Re: Генерация календаря по двум датам  [new]
AlexFF__|
Member

Откуда:
Сообщений: 2852
env
AlexFF__|,

Если клиент - отчётная система (CR,FR,MS RS и т.д.), то транспонировать строки по столбцам проще в нём.

К сожалению, не пойму почему проще.
6 сен 11, 16:50    [11236221]     Ответить | Цитировать Сообщить модератору
 Re: Генерация календаря по двум датам  [new]
env
Member

Откуда: Россия, Москва
Сообщений: 6697
AlexFF__|,

Потому что код транспонирования по датасету уже реализован в генераторе отчётов, и не требуется изобретать велосипедов с квадратными динамическими колёсами.
6 сен 11, 17:01    [11236309]     Ответить | Цитировать Сообщить модератору
 Re: Генерация календаря по двум датам  [new]
AlexFF__|
Member

Откуда:
Сообщений: 2852
env
AlexFF__|,

Потому что код транспонирования по датасету уже реализован в генераторе отчётов, и не требуется изобретать велосипедов с квадратными динамическими колёсами.

Это не проще, это халява. Которая время от времени наказуема =)
6 сен 11, 17:29    [11236510]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить