На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела C/C++: Базы данных
Модераторы: B.V.
  
    > Склеить строки по пересекающимся периодам
      Доброго времени суток!
      Подскажите, пожалуйста, как можно решить такую задачу (Oracle 10)
      есть данные:
      date1, date2
      d1 d2
      d2 d3
      d3 d4
      d5 d6
      d7 d8

      на выходе получить:
      date1, date2
      d1 d4
      d5 d6
      d7 d8
        date1 и date2 - это поля одной таблицы или нет?
        Опишите задачу подробнее.
          ExpandedWrap disabled
            create or replace table period(date1 date, date2 date)
            insert into period(date1, date2) values('09.02.2013', '10.02.2013')
            insert into period(date1, date2) values('20.02.2013', '21.02.2013')
            insert into period(date1, date2) values('03.03.2013', '04.03.2013')
            insert into period(date1, date2) values('04.03.2013', '06.03.2013')
            insert into period(date1, date2) values('06.03.2013', '08.03.2013')


          хочу:
          date1 date2
          09.02.2013 10.02.2013
          20.02.2013 21.02.2013
          03.03.2013 08.03.2013
            ИМХО, простым запросом этого сделать не получится. Нужно либо на сервере в запросе, либо на клиенте в программе делать цикл, который будет перебирать выбранные записи и объединять интервалы.
            0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
            0 пользователей:


            Рейтинг@Mail.ru
            [ Script execution time: 0,0181 ]   [ 16 queries used ]   [ Generated: 25.04.24, 00:58 GMT ]