У меня есть один запрос, этот запрос будет отображаться на основе дня, в который день будет отображаться в зависимости от недели, на которой он будет отображаться.Запрос должен быть изменен
В этой таблице часов моих даты начала и конца начинается от 2014-01-06 2014-01-12 одна недели ..
для например:
declare @Hours as Table (EmpId Int, Monday Time, Tuesday Time, Wednesday Time,
Thursday Time, Friday Time, Saturday Time, Sunday Time, StartDate Date, EndDate Date);
insert into @Hours
(EmpId, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday, StartDate, EndDate)
values
(1, '08:00', '00:00', '00:00', '00:00', '00:00', '00:00', '00:00', '2014-01-06 00:00:00.000', '2014-01-12 00:00:00.000');
select * from @Hours;
with Week as (
-- Build a table of all of the dates in the work week.
select StartDate as WorkDate, EndDate
from @Hours
union all
select DateAdd(day, 1, WorkDate), EndDate
from Week
where WorkDate < EndDate),
DaysHours as (
-- Build a table of the hours assigned to each date.
select EmpId,
case DatePart(weekday, W.WorkDate)
when 1 then H.Monday
when 2 then H.Tuesday
when 3 then H.Wednesday
when 4 then H.Thursday
when 5 then H.Friday
when 6 then H.Saturday
when 7 then H.Sunday
end as Hours,
WorkDate as StartDate, WorkDate as EndDate
from Week as W inner join
@Hours as H on H.StartDate <= W.WorkDate and W.WorkDate <= H.EndDate)
-- Output the non-zero hours.
select EmpId, Hours,StartDate as StartDate, EndDate
from DaysHours
where Hours <> Cast('00:00' as Time);
нужен выход, как это:
EmpId Hours StartDate EndDate
----------- ---------------- ---------- ----------
1 08:00:00.0000000 2014-01-06 2014-01-06
, потому что понедельник только мы имеем value.but мой выход, как этот
EmpId Hours StartDate EndDate
----------- ---------------- ---------- ----------
1 08:00:00.0000000 2014-01-12 2014-01-12
он должен работать в зависимости от того, в какой день это значение.
Может ли любой орган изменить этот запрос сам.
Спасибо,
это не выглядит как MySQL. Вы пытаетесь преобразовать свой существующий sql в mysql? –
извините, что это sql только я изменю тег –