Especifica um conjunto de resultados nomeado temporário, conhecido como uma CTE (expressão de tabela comum). Ela é derivada de uma consulta simples e definida no escopo de execução de uma única instrução SELECT, INSERT, UPDATE, DELETE ou MERGE.
Selecioando dados com CTE
WITH cte_clientesas(SELECT ClienteCodigo FROM Clientes),cte_cartaoas(SELECT ClienteCodigo FROM CartaoCredito)select cte_cartao.ClienteCodigo, cte_clientes.ClienteCodigo from cte_clientes inner join cte_cartaoon cte_cartao.ClienteCodigo=cte_clientes.ClienteCodigo
Atualiznado dados usadno CTE
WITH cte_clientesas(SELECT ClienteCodigo FROM Clientes),cte_cartaoas(SELECT ClienteCodigo FROM CartaoCredito)UPDATE cte_clientes set ClienteCodigo = cte_clientes.ClienteCodigo from cte_clientes inner join cte_cartaoon cte_cartao.ClienteCodigo=cte_clientes.ClienteCodigo