• Couldn't this same query:

    UPDATE Products

    SET UnitPrice = 0.9 * UnitPrice

    WHERE ProductID IN

    (

    SELECT ProductID FROM(

    SELECT ROW_NUMBER() OVER (ORDER BY UnitPrice DESC) AS Number, ProductID FROM Products) AS B

    WHERE Number < = 10

    )

    Be written in SQL2k (or SQL2005 for that matter) using TOP instead of ROW_NUMBER? This query even looks simpler and easier to understand:

    UPDATE Products

    SET UnitPrice = 0.9 * UnitPrice

    WHERE ProductID IN

    (

    SELECT TOP 10 ProductID FROM Products

    ORDER BY UnitPrice DESC

    )