Questão FC372784
Considere o seguinte código exemplo escrito em SOL Server. MERGE INTO Funcionarios AS alvo USING NovoFuncionarios AS origem ON alvo. ID = origem. ID WHEN (I) Nome = origem Nome, Ca
Linguagem SQL
FCC · 2024
Considere o seguinte código exemplo escrito em SOL Server.
MERGE INTO Funcionarios AS alvo
USING NovoFuncionarios AS origem
ON alvo. ID = origem. ID
WHEN (I) Nome = origem Nome, Cargo = origem.Cargo, Salario = origem.salario
WHEM (II) (ID, Mame, Cargo, DataContratacao, Salario)
(III) (origem.ib, origem.Nome, origem.Cargo, origem.DataContratacao, origem.Salario);
O código testa a existência em alvo de cada novo funcionário (origem). Caso já exista, ele atualiza, caso contrário, inclui.
As lacunas I, II e III são preenchidas, correta e respectivamente, por
- SEACHED THEN UPDATE SET - NOT SEARCHED THEN INSERT - VALUES
- SEEKED THEN REALIZE SET - NOT SEEKED THEN INCLUDE - DATA
- MATCHED THEN UPDATE SET - NOT MATCHED THEN INSERT - VALUES
- SEEKED THEN UPDATE SET - NOT SEEKED THEN INSERT - VALUES
- MATCHED THEN UPDATE SET - NOT MATCHED THEN INSERT - DATA
Mostrar resposta e comentário
Gabarito
Certo
Comentário do professor
A alternativa correta preenche as lacunas com as cláusulas padrão do comando MERGE do SQL Server: WHEN MATCHED THEN UPDATE SET — usada quando a condição ON encontra correspondência entre alvo e origem, indicando que a linha existente deve ser atualizada com os novos valores.
A segunda lacuna é WHEN NOT MATCHED THEN INSERT — ativa-se quando não há correspondência; nesse caso insere-se um novo registro na tabela destino. Por fim, a palavra-chave VALUES precede a lista de valores a serem inseridos, correspondendo às colunas indicadas.
Assim, a sequência MATCHED THEN UPDATE SET — NOT MATCHED THEN INSERT — VALUES implementa exatamente a lógica “atualiza se existir, insere caso contrário”.
Conteúdo do catálogo FC Concursos · Atualizado em