Как прокомментировал, ваш запрос выглядит довольно хорошо, кроме этих:
предложение ORDER BY
не имеет смысла;запрос UPDATE
не возвращает никаких записей, поэтому порядок выходит за рамки
по той же причине, вам не нужно добавлять псевдоним обновленный столбец
Рассмотрим:
UPDATE Table
SET Form = CASE
WHEN (cnt - rownum < cnt % NumberUp) THEN 0
ELSE floor((rowNum - 1) / numberUp) + 1
END