|
Организовать запрос | ☑ | ||
|---|---|---|---|---|
|
0
birk
09.02.12
✎
15:24
|
Есть таблица:
01.01.2011 Сотрудник1 Больничный 02.01.2011 Сотрудник1 Больничный 03.01.2011 Сотрудник1 Больничный 04.01.2011 Сотрудник1 Отпуск 05.01.2011 Сотрудник1 Отпуск 06.01.2011 Сотрудник1 Отпуск Нужно получить: Сотрудник1 | Больничный | С 01.01.2011 По 03.01.2011 Сотрудник1 | Отпуск | С 04.01.2011 По 06.01.2011 Подскажите как? |
|||
|
1
shuhard
09.02.12
✎
15:25
|
(0) соединить налево дважды с максимумом по дате и минимумом
можно подзапросами, можно временными таблицами |
|||
|
2
birk
09.02.12
✎
15:28
|
Не понял, как я получу от сабжа 03.01.2011 Сотрудник1 Больничный максимумом?
|
|||
|
3
Maxus43
09.02.12
✎
15:32
|
а если даты не по порядку? или после отпуска опять больничный?
|
|||
|
4
birk
09.02.12
✎
15:33
|
так и есть :|
|
|||
|
5
shuhard
09.02.12
✎
15:36
|
(3) стоп, не надо грязи,
в ТЗ было два разных не пересекающихся начисления и (1) полностью ТЗ соответствует |
|||
|
6
birk
09.02.12
✎
15:37
|
01.01.2011 Сотрудник1 Больничный
02.01.2011 Сотрудник1 Больничный 03.01.2011 Сотрудник1 Больничный 04.01.2011 Сотрудник1 Отпуск 05.01.2011 Сотрудник1 Отпуск 06.01.2011 Сотрудник1 Отпуск 07.01.2011 Сотрудник1 Больничный Нужно получить: Сотрудник1 | Больничный | С 01.01.2011 По 03.01.2011 Сотрудник1 | Отпуск | С 04.01.2011 По 06.01.2011 Сотрудник1 | Больничный | С 07.01.2011 По 07.01.2011 |
|||
|
7
Maxus43
09.02.12
✎
15:38
|
(5) я просто заголовок следущего вопроса протелепатировал)
|
|||
|
8
shuhard
09.02.12
✎
15:38
|
(7) =)
|
|||
|
9
Maxus43
09.02.12
✎
15:39
|
запросом имхо не решить, в коде надо обрабатывать
|
|||
|
10
shuhard
09.02.12
✎
15:44
|
(9) почему
31 временная таблица + производственный календарь |
|||
|
11
Maxus43
09.02.12
✎
15:45
|
ну да, если 31 таблица и календарь :) шкурка выделки не стоит
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |