Test merge

0

Please login or register to vote for this query.

(click on this box to dismiss)

Physics

Q&A for active researchers, academics and students of physics

CREATE TABLE #Tabela1 ( Nome VARCHAR (100)

                                       , Cadastro DATETIME

                                       , Alteracao DATETIME

                                       , Ativo BIT)


CREATE TABLE #Tabela2 ( Nome VARCHAR(100)

                                       , Twitter VARCHAR(100))



--TABELA/VIEW DESTINO
MERGE #Tabela1 AS Destino
--TABELA/VIEW/STATEMENT DESTINO
USING #Tabela2 AS Origem
--COLUNA CHAVE PARA LIGACAO
ON Destino.Nome = Origem.Nome
--QUANDO NAO TEM REGISTRO NO DESTINO E TEM NA ORIGEM
WHEN MATCHED
THEN UPDATE SET Ativo = 0, Alteracao = GETDATE()
--QUANDO TEM NO DESTINO E NAO TEM NA ORIGEM
WHEN NOT MATCHED
THEN INSERT (Nome, Cadastro, Ativo) VALUES (Origem.Nome, Getdate(),1)
--TEM REGISTRO NO DESTINO E NAO TEM NA ORIGEM DIFERENTE DE JOAO
WHEN NOT MATCHED BY SOURCE AND Nome <>'Joao'
THEN UPDATE SET Ativo = NULL, Alteracao = GETDATE(); 

select * from #Tabela1

Enter Parameters

Options:
Switch to meta site
loading Hold tight while we fetch your results