Имам две таблици в система за управление на проекти на сцената, една (опростена) таблица, съдържаща ID на проекта и действителни дати на изход за всеки изход, 1-5. В другата имам исторически запис на всички прогнозни данни; Прогнозирани приходи, прогнозирани маржове, прогнозна година и т.н. Всеки път, когато прогнозата се актуализира, тя записва новите прогнозни стойности, времевия печат на промяната и идентификатора на проекта. Изискването е да се извлекат всички метрични стойности за последната актуализация преди действителната дата на изход, записана в първата таблица. Например, проект 100 има дата на Gate 2 от 2014-12-18. Трябва да извлека най-новите стойности преди тази дата.
Таблица с дати на вратата:
ProjectID InternalGate2
--------- -------------
100 2014-12-18
2000 2013-01-15
Таблица с исторически показатели:
ProjectID Metric MetricYear LastUpdated MetricValue
--------- ------ ---------- ----------- -----------
100 Sales 2015 2013-09-05 125000
100 Sales 2016 2013-09-05 230000
100 GM 2015 2013-09-05 .48
100 GM 2016 2013-09-05 .49
100 Sales 2015 2014-05-26 200000
100 Sales 2016 2014-05-26 300000
100 GM 2015 2014-05-26 .50
100 GM 2016 2014-05-26 .51
100 Sales 2015 2015-01-28 300000
100 Sales 2016 2015-01-28 400000
100 GM 2015 2015-01-28 .55
100 GM 2016 2015-01-28 .56
2000 Sales 2014 2012-11-23 200000
2000 Sales 2015 2012-11-23 300000
2000 Sales 2016 2012-11-23 310000
2000 GM 2014 2012-11-23 .75
2000 GM 2015 2012-11-23 .77
2000 GM 2016 2012-11-23 .77
2000 Sales 2015 2013-02-11 450000
2000 Sales 2016 2013-02-11 450000
2000 Sales 2017 2013-02-11 500000
2000 GM 2015 2013-02-11 .68
2000 GM 2016 2013-02-11 .69
2000 GM 2017 2013-02-11 .70
За този пример наборът от резултати ще бъде четирите реда за Project 100 с дата на последна актуализация от 2014-05-26, тъй като това беше последната актуализация преди 2014-12-18 и първите шест реда с данни за Project 2000, актуализиран 2012- 11-23.
Всякакви насоки ще бъдат много оценени.