powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Порядок обработки записей оператором UPDATE
4 сообщений из 4, страница 1 из 1
Порядок обработки записей оператором UPDATE
    #32025181
Sergey Setkov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Можно-ли как то задать порядок обработки записей оператором UPDATE ?
Например если есть 2 поля: mes & summa, нужно обрабатывать записи в порядке возрастания mes, т.к. summa в текущем месяце вычисляется в зависимости от суммы в предыдущем месяце ???
...
Рейтинг: 0 / 0
Порядок обработки записей оператором UPDATE
    #32025186
qu-qu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На "живой" таблице - порядок выполнения UPDATE по строкам совпадает с размещением данных в записях (т.е. - по кластерному индексу).

Если нужен порядок выполнения отличный от кластерного индекса - можно сделать:
SELECT ... INTO #temp_table FROM ... WHERE ... ORDER BY ...

Во временной таблице - порядок выполнения UPDATE будет соответствовать порядку попадания туда записей, обусловленному предыдущим ORDER BY ...

З.Ы. никаких ссылок на документацию по этому поводу - не имею, просто - неоднократно проверенный и используемый многими опыт.
...
Рейтинг: 0 / 0
Порядок обработки записей оператором UPDATE
    #32026210
Michael+Hopgarden
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 qu-qu и др. "курсороненавистникам"

A не было ли случаев когда порядок выполнения update во временной таблице для 7.0 и выше не соответствовал бы выше приведенному утверждению qu-qu?

Что будет если временная таблица будет ну о-о-очень большой?

Вопрос не праздный. Давно хочу засунуть курсоры куда подальше.
...
Рейтинг: 0 / 0
Порядок обработки записей оператором UPDATE
    #32026249
Фотография Garya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прямо по озвученному вопросу ничего конкретно сказать не могу. Однако, я столкнулся с интересным поведением оператора UPDATE в случае, когда используется синтаксис с двойным FROM, а конструкция после второго FROM возвращает число записей больше , чем в модифицируемой таблице. Мне было необходимо не просто проапдейтить записи, но еще и запустить триггер, в котором должны были обработаться несколько вариантов модификации одной записи. То есть, выполнить модификацию каждой записи не однократно, а многократно. К сожалению, отрабатывает только опервый попавшийся в выборке вариант модификации записи. Хотел дать ссылку на свое сообщение на форуме, искал все комбинации фразы "чертов однопроходный update", но почему-то найти не смог.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Порядок обработки записей оператором UPDATE
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]