SQL | Declaración de fusión

Requisito previo: INSERTAR , ACTUALIZAR , ELIMINAR

El comando MERGE en SQL es en realidad una combinación de tres declaraciones SQL: INSERTAR, ACTUALIZAR y ELIMINAR . En palabras simples, la declaración MERGE en SQL proporciona una forma conveniente de realizar estas tres operaciones juntas, lo que puede ser muy útil cuando se trata de manejar grandes bases de datos en ejecución. Pero a diferencia de las declaraciones INSERT, UPDATE y DELETE, la declaración MERGE requiere una tabla de origen para realizar estas operaciones en la tabla requerida que se llama tabla de destino.

Ahora sabemos que MERGE en SQL requiere dos tablas: una, la tabla de destino en la que queremos realizar las operaciones INSERTAR, ACTUALIZAR y ELIMINAR, y la otra es la tabla de origen que contiene los nuevos datos modificados y correctos para la tabla de destino y en realidad es en comparación con la tabla de destino real para modificarla.

En otras palabras, la declaración MERGE en SQL básicamente combina datos de un conjunto de resultados de origen en una tabla de destino en función de una condición que se especifica. La sintaxis de la declaración MERGE puede ser compleja de entender al principio, pero es muy fácil una vez que sabe lo que significa. Entonces, para no confundirse primero, analicemos algunos conceptos básicos. Suponga que tiene dos tablas: origen y destino, ahora piense si desea realizar cambios en la tabla de destino requerida con la ayuda de la tabla de origen provista que consta de los detalles más recientes.

  • ¿Cuándo necesitará insertar los datos en la tabla de destino?
    Obviamente, cuando hay datos en la tabla de origen y no en la tabla de destino, es decir , cuando los datos no coinciden con la tabla de destino.
  • ¿Cuándo necesitará actualizar los datos?
    Cuando los datos de la tabla de origen coinciden con la tabla de destino, pero no coincide ninguna entrada que no sea la clave principal.
  • ¿Cuándo necesitará eliminar los datos?
    Cuando hay datos en la tabla de destino y no en la tabla de origen, es decir , cuando los datos no coinciden con la tabla de origen.

Ahora, sabemos cuándo usar las declaraciones INSERT, UPDATE y DELETE en caso de que queramos usar la declaración MERGE, por lo que no debería haber ningún problema para que entienda la sintaxis que se proporciona a continuación:

//.....syntax of MERGE statement....//

//you can use any other name in place of target
MERGE target_table_name AS TARGET  

//you can use any other name in place of source 
USING source_table_name AS SOURCE   
ON condition (for matching source and target table)
WHEN MATCHED (another condition for updation)

 //now use update statement syntax accordingly
THEN UPDATE                       
WHEN NOT MATCHED BY TARGET 

//now use insert statement syntax accordingly
THEN INSERT                        
WHEN NOT MATCHED BY SOURCE 
THEN DELETE;

Eso es todo sobre la instrucción MERGE y su sintaxis.

Referencias –
MERGE – docs.microsoft
MERGE – docs.oracle

Este artículo es una contribución de Dimpy Varshni. Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.

Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *