La parte che hai rimosso, non è per l'ordinamento, ma per fare in modo che gli id non abbiano "salti". E potrebbe capitare (errore di inserimento, cancellazione, ecc). Quindi ti consiglio di lasciarlo.. Eccoti l'esempio con l'update e la tua tabella TabellaDiSupp.
USE tempdb;
GO
-- creazione oggetti
CREATE TABLE dbo.TabellaDiSupp
(
REV int NOT NULL PRIMARY KEY CLUSTERED
, OreSuBanco smallint NOT NULL
, Oreprova int
)
GO
INSERT INTO dbo.TabellaDiSupp (REV, OreSuBanco, Oreprova)
VALUES (1, 0, 0)
INSERT INTO dbo.TabellaDiSupp (REV, OreSuBanco, Oreprova)
VALUES (2, 150, 0)
INSERT INTO dbo.TabellaDiSupp (REV, OreSuBanco, Oreprova)
VALUES (3, 320, 0)
INSERT INTO dbo.TabellaDiSupp (REV, OreSuBanco, Oreprova)
VALUES (5, 400, 0)
INSERT INTO dbo.TabellaDiSupp (REV, OreSuBanco, Oreprova)
VALUES (7, 500, 0)
GO
-- siccome gli id potrebbero non essere in sequenza, genero un contatore
DECLARE @t TABLE (ID int, IndiceRiga int, OreSuBanco int)
-- VERSIONE per SQL SERVER 2005 - Funzione ROWNUMBER()
/*********************************************************************
INSERT INTO @t
SELECT
ID
, IndiceRiga = ROW_NUMBER() OVER (ORDER BY ID)
, OreSuBanco
FROM
dbo.OreLavoro
**********************************************************************/
-- VERSIONE per SQL SERVER 2000
-- *********************************************************************
INSERT INTO @t
SELECT
REV
, (SELECT COUNT(*)
FROM dbo.TabellaDiSupp O2
WHERE O2.REV <= O1.REV) as IndiceRiga
, O1.OreSuBanco
FROM
dbo.TabellaDiSupp O1
-- **********************************************************************
-- ricavo la sottrazione
SELECT
O1.ID
, O1.IndiceRiga
, O1.OreSuBanco - ISNULL(O2.OreSuBanco,0)
FROM
@t O1
LEFT JOIN @t O2 ON O1.IndiceRiga = O2.IndiceRiga + 1
UPDATE T
SET OreProva = O1.OreSuBanco - ISNULL(O2.OreSuBanco,0)
FROM
dbo.TabellaDiSupp T
JOIN @t O1 ON O1.ID = T.REV
LEFT JOIN @t O2 ON O1.IndiceRiga = (O2.IndiceRiga + 1)
SELECT * FROM dbo.TabellaDiSupp
GO
-- pulizia
DROP TABLE dbo.TabellaDiSupp
GO
>Ciao,
Ciao! 
Alessandro Alpi | SQL Server MVP
http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org