Привет всем мастерам SQL Server Blackbelt там.
У меня есть простой вопрос, который мне нужно решить.Я пытаюсь сделать какое-то странное обновление на столе.Конкретная структура таблицы не важна, и моя проблема может быть сведена к следующему:
update SalesTotal
set @total = total = @total + sales,
@flag = flag = case when @flag = 1 then 0
when @total > x then 1
else 0 end
Вопрос в том, МОГУ ЛИ Я доверять, что переменная @total будет иметь новое значение, т.е.будет выполняться перед второй частью набора, или будет содержать «старое» значение (из предыдущего назначения), или оно не определено.Я занимаюсь этой проблемой в течение некоторого времени и не могу найти решение, и оно действительно важно для моего обновления (я хочу обновить таблицу за один раз).Одно из значений, которые я хочу обновить, зависит от значения другого (в той же строке), поэтому единственный способ для него работать в одном обновлении - это если оно работает.
Надеюсь, вы можете помочь мне