Вы можете объединить таблицу с собой и получить желаемое значение. Предполагая, что ваш столбец даты является первичным ключом или уникальным.
update your_table upd set period_number = tbl.period_number
from
(
select b.date, max(b2.date) as d2 from your_table b
inner join d_batch_tab b2 on b2.date< b.date and b2.period_number is not null
group by b.date
)t
inner join your_table tbl on tbl.date = t.d2
where t.date= upd.date
Если вам не нужно обновлять таблицу, а только оператор выбора, то
select yt.date, yt.category, yt.start_period, tbl.period_number
from your_table yt
inner join
(
select b.date, max(b2.date) as d2 from your_table b
inner join d_batch_tab b2 on b2.date< b.date and b2.period_number is not null
group by b.date
)t on yt.date = t.date
inner join your_table tbl on tbl.date = t.d2
Еще после некоторого расследования мы решили пойти с опцией StateServer. Мы все еще надеемся видеть, как преодолеть единую точку отказа на StateServer, и мы подняли два дальнейших пути расследования.
Наша первая опция состоит в том, чтобы использовать стороннюю программу для обработки сессий. Тот, на который мы смотрим прямо сейчас, называют nCache: Я думаю, что существует, другой назвал ScaleOut, на который мы также можем смотреть.
Опция номер два состоит в том, чтобы использовать состояние сеанса paritioning, и мы в настоящее время изучаем эту опцию также: http://msdn.microsoft.com/en-gb/magazine/cc163730.aspx
Это может быть боль, но я решил выключить Сессию и соглашение с последствиями. До сих пор ничто непреодолимое не подошло.
Я думаю, что Вы перемещаетесь в другой arquitecture: больше чем один Фронтэнд IIS.
Вы собираетесь использовать NLB?
Здесь в моей компании мы перемещаем приложение.NET в два IIS с Балансировкой Сетевой нагрузки и использованием приложений, чтобы иметь управление Сессией в материалах.
Мы исследовали это была другая альтернатива:
После консультации Microsoft наилучшим вариантом был Сервер состояния :)
Надежда это помогает!
С уважением!
К моему знанию нет никакого способа создать резервную копию или копировать Ваши услуги StateServer. Другая проблема при использовании StateServer в веб-ферме - то, если кластер позволяет, чтобы тот же браузер достиг различных машин по различным запросам, у них могли бы быть различные данные сессии по каждому запросу! (редактирование: Martin указал, ниже которого можно зафиксировать это путем совместного использования единственного экземпляра StateServer среди нескольких веб-серверов). В Ваших целях опция 2 или 3 была бы более отказоустойчивой, и я добавлю другую идею: поскольку маленькие части данных пытаются использовать cookie для устройства хранения данных сессии.
Также удостоверьтесь, что Вы не используете SQL Server для хранения состояния сеанса, которое просто прибывает из базы данных так или иначе. Если так, Вы могли бы также просто назвать базу данных каждым разом.