У меня есть следующие данные:
ID Date interval interval_date tot_activity non-activity
22190 2011-09-27 00:00:00 1000 2011-09-27 10:00:00.000 265 15
У меня есть другая таблица с этими данными:
Date ID Start END sched_non_activity non_activity
10/3/2011 12:00:00 AM HBLV-22267 10/3/2011 2:02:00 PM 10/3/2011 2:11:00 PM 540
Теперь, в поле non_activity второй таблицы, я бы хотел, чтобы это былозначение из первой таблицы.Однако мне нужно захватить tot_activity - non_activity, где интервалы (с шагом 15 минут) из первой таблицы попадают в тот же период времени, что и начало и конец второй таблицы.
У меня есть следующеедо сих пор:
SELECT 1.ID, 1.Date, 1.interval, 1.interval_date, 1.tot_activity, 1.non_activity,
1.tot_activity - 1.non_activity AS non_activity
FROM table1 AS 1 INNER JOIN
LIST AS L ON 1.ID = L.ID INNER JOIN
table2 AS 2 ON 1.Date = 2.Date AND L.ID = Right(2.ID,5)
Where 1.interval_date >= 2.Start AND 1.interval_date < 2.End
ORDER BY 1.ID, 1.interval_date
С этим, я уже вижу, что я не смогу захватить, если старт из таблицы 2 в 15:50, что означает, что мне нужно захватить интервал 15: 45.
есть ли способ сделать это с помощью запросов, или я должен использовать переменные, и делать проверку за интервал. Любая помощь будет принята с благодарностью.