понедельник, 18 марта 2013 г.

Пример использования обобщенного табличного выражения (CTE)


-- Пример использования обобщенного табличного выражения (CTE)
-- Найти товары, НЕ являющиеся самыми дорогими в своей ценовой категории (Class)
--
USE AdventureWorks2012;
GO
WITH MyCTE
AS  (
    SELECT
        RANK() OVER
        (
            PARTITION BY Class
            ORDER BY ListPrice DESC
        ) AS Flag
    ,Class
    ,Name
    ,ListPrice
    FROM AdventureWorks2012.Production.Product
    )
SELECT * FROM MyCTE
WHERE Flag > 1;