Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Como posso usar a instrução if após um CTE (SQL Server 2005)


Expressões de tabela comuns são definidos dentro do contexto de uma única instrução:
WITH cte_name AS (
  <cte definition>)
<statement that uses cte>;

Então você pode fazer algo como:
WITH CTE
AS
( 
    SELECT * FROM SOMETABLE
)
SELECT * FROM CTE;

ou
WITH CTE
AS
( 
    SELECT * FROM SOMETABLE
)
UPDATE CTE 
SET somefield = somevalue
WHERE id = somekey;