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

Откуда:
Сообщений: 22
Добрый день, хочу попросить Вашей помощи в таком вопросе:
Существует таблица отпусков: Дата начала отпуска, дата конца, таб. номер сотрудника.
Промежуточная таблица: таб. номер, год(к примеру 2011,2012,2013).
Нужно получить кол-во дней нахождения на больничном и периоды в каждом из годов промежуточной таблицы, причем если сотрудник был на больничном с 01.11.2011 по 02.01.2012 то в результате должно быть так:
2011г
01.11.11 - 31.12.11 | 61день
2012г.
01.01.2012 - 02.01.2012 | 2 дня.


пробовал делать через case, где @DMin= 01.01.2011, @DMax=01.01.2013, nYear=2011,2012,2013

TabNum = tr.TabNum,
Dbeg = case when datepart(year,hol.DateBegin) < (select min(nYear) from #TRes) then @DMin else hol.DateBegin end,
Dend = case when datepart(year,hol.DateEnd) > (select max(nYear) from #TRes) then @Dmax else hol.DateEnd end,
SumDays = case when datepart(year,hol.DateBegin) < (select min(nYear) from #TRes) then datediff(day,@DMin,hol.DateEnd+1)
when datepart(year,hol.DateEnd) > (select max(nYear) from #TRes) then datediff(day,hol.DateBegin,@DMax+1)
но это отрабатывает только если год начала отпуска не входит в nYear.
Как лучше поступить? Заранее спасибо!
24 июл 13, 09:43    [14608330]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по выборке данных  [new]
rukesa
Member

Откуда:
Сообщений: 22
Извиняюсь за формат кода, не пойму как отредактировать теперь мое сообщение...
24 июл 13, 09:48    [14608363]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по выборке данных  [new]
iap
Member

Откуда: Москва
Сообщений: 46999
rukesa
Извиняюсь за формат кода, не пойму как отредактировать теперь мое сообщение...
Здесь нельзя редактировать.
Напишите ещё раз
24 июл 13, 09:55    [14608407]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по выборке данных  [new]
rukesa
Member

Откуда:
Сообщений: 22
продублировал, эту тему можно удалять
24 июл 13, 10:06    [14608494]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по выборке данных  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6723
rukesa
продублировал
Зря, дали лишнюю работу людям. Форум не блестит чистотой ни форматом, ни сленгом, ни вопросами, и порой ответами. Так что перфекционизм тут неуместен.
rukesa
эту тему можно удалять
Внизу каждого поста есть кнопочка [Сообщить модератору]
24 июл 13, 10:14    [14608577]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить