Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 CASE  [new]
Mustang1234567
Member

Откуда:
Сообщений: 42
Добрый день.
Как в этом запросе использовать несколько CASE?
Use AdventureWorks2008
GO
Create View GreenTyle2
AS
WITH 
    E1(N) AS (SELECT 1 FROM (VALUES (1),(1),(1),(1),(1),(1),(1),(1),(1),(1))dt(n)), 
    E2(N) AS (SELECT 1 FROM E1 a, E1 b), --10E+2 or 100 rows 
    E4(N) AS (SELECT 1 FROM E2 a, E2 b), --10E+4 or 10,000 rows max 
    cteTally(N) AS ( SELECT ROW_NUMBER() OVER (ORDER BY (SELECT NULL)) FROM E4 ) 
SELECT  
    poh.PurchaseOrderID,
    pod.PurchaseOrderDetailID,
    p.ProductID,
    p.Name,
    p.ProductNumber,
    poh.OrderDate,
    poh.ShipDate,
    n.N AS ItemNumber,
    CASE 
	WHEN n.N > pod.ReceivedQty THEN 0 ELSE 1 END AS ReceivedInd

FROM    
    Purchasing.PurchaseOrderDetail pod
     INNER JOIN 
    Purchasing.PurchaseOrderHeader poh ON 
        pod.PurchaseOrderID = poh.PurchaseOrderID
     INNER JOIN 
    Production.Product p ON 
        pod.ProductID = p.ProductID
     INNER JOIN 
    cteTally n ON 
        pod.OrderQty >= n.N
GO
SELECT TOP 1000 * FROM GreenTyle2
21 авг 14, 12:34    [16473384]     Ответить | Цитировать Сообщить модератору
 Re: CASE  [new]
Glory
Member

Откуда:
Сообщений: 104751
Mustang1234567
Как в этом запросе использовать несколько CASE?

Взять и написать их ?
21 авг 14, 14:53    [16474542]     Ответить | Цитировать Сообщить модератору
 Re: CASE  [new]
wizli
Member

Откуда: Minsk
Сообщений: 270
Судя по количеству тем от данного ТС, можно предположить, что парня взяли на работу, которую он явно не вытягивает.
21 авг 14, 14:58    [16474579]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить