Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

2000 Получить список дат. [MSSQL]


KAA ©   (2002-12-19 12:54:00) 

Таблица:
DTBegin datetime
DTEnd datetime

Заполнена она так:
DTBegin DTEnd
01.12.2002 03.12.2002
02.12.2002 05.12.2002
01.12.2002 07.12.2002
05.12.2002 07.12.2002

Задача - получить следующую таблицу

01.12.2002
02.12.2002
03.12.2002
05.12.2002
07.12.2002


KAA   (2002-12-19 14:55:00) [1]

>3JIA9I CyKA © (19.12.02 14:44)
На определенном отрезке, в том то и вся сложность.
Вообщем решение, разбить весь отрезок на более мелкие, границы которых я и запрашивал в первоначальном варианте. Затем на каждом отрезке считаем сумму занятых мест.


3JIA9I CyKA   (2002-12-19 14:44:00) [2]

занято на определенном отрезке времени
или на момент времени?


KAA   (2002-12-19 14:38:00) [3]

>Prooksius © (19.12.02 14:32)
У меня и так вся программа на ХП


KAA   (2002-12-19 14:37:00) [4]

Вообще глобально это задача на нахожденеи перечечения отрезков.

000000000000XXXXXXXXXX0000000
XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXX0000000000000XXXXXXXXX

Вот изображене зантости мест в номере. 0 - в этот час место свободно, Х - занято. Подсчитать, сколько мест в номере занято на определенном отрезке времени.
Просто я уже срашивал об этом, идей не подкинули. Вот теперь по частям пытаюсь выяснить.


Prooksius   (2002-12-19 14:32:00) [5]

Тут ИМХО ХП нужно заводить.


Prooksius   (2002-12-19 14:28:00) [6]

2 KAA © (19.12.02 14:24)
Скажи на словах, что нужно. Из этого немного непонятно.


KAA   (2002-12-19 14:24:00) [7]

А если немного усложнить задачу и получить такую таблицу:

01.12.2002 02.12.2002
02.12.2002 03.12.2002
03.12.2002 05.12.2002
05.12.2002 07.12.2002


Prooksius   (2002-12-19 13:00:00) [8]

И select distinct from (Prooksius © (19.12.02 12:58))
Если так можно... :)


Prooksius   (2002-12-19 12:58:00) [9]

select DTBegin from Table1
union
select DTEnd from Table1
order by 1


Наверх

Титульная страница Поиск, карта сайта Написать письмо