четверг, 28 марта 2013 г.

Как пронумеровать строки


-- Воспользуемся функцией ранжирования ROW_NUMBER
SELECT
    SalesOrderID AS "Номер заказа"
    ,ROW_NUMBER() OVER
    (
         ORDER BY UnitPrice DESC -- Правило нумерации строк
    ) AS "Номер строки"
    ,ProductID AS "Номер товара"
    ,OrderQty AS "Количество"
    ,UnitPrice AS "Цена"
FROM AdventureWorks2012.Sales.SalesOrderDetail
WHERE SalesOrderID = 43659
ORDER BY UnitPrice DESC -- Сортировка набора

-- Порядок нумерации и порядок сортировки могут не совпадать