resumen: este artículo revisa cómo usar los tipos de lenguaje básico de manipulación de datos (DML) INSERT, UPDATE, UPDATE JOINS, DELETE y UPSERT para modificar datos en tablas.,
- Data Manipulation Language (DML)
- DML Statement Types
- INSERT Statement
- UPDATE Statement
- UPDATE with JOINS
- DELETE Statement
- UPSERT
Data Manipulation Language (DML)
nuevas filas en una tabla.
tipos de instrucciones DML
- INSERT
- UPDATE
- DELETE
INSERT Statement
Puede agregar nuevas filas a una tabla utilizando la instrucción INSERT:
Syntax
INSERT INTO table )] VALUES (value );
con la sintaxis anterior, solo una fila se inserta a la vez.
a) insertar nuevas filas: insertar nuevas filas para cada columna.,
Table Structure
Example
INSERT INTO departments(department_id,department_name,manager_id, location_id) VALUES (10, 'IT', 100, 1100);
Or
INSERT INTO departments VALUES (10, 'IT', 100, 1100);
b) Insert Rows with null values:
Example
INSERT INTO departments(department_id,department_name) values (20,'HR');
Or
INSERT INTO departments values (30,'Sales',null,null);
UPDATE Statement
Using an UPDATE statement a user can modify an existing row.,
sintaxis
UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition;
ejemplo 1
modificar un id de Departamento de valor a 50 para un empleado cuyo id es 100 usando la cláusula WHERE::
Ejemplo 2
sin la cláusula WHERE toda la tabla se actualizaría:
Ejemplo 3
actualizar varias filas.
Podemos actualizar más de una fila usando una instrucción UPDATE:
Update JOINS
Podemos usar Update JOINS para agregar valores desde una tabla separada.,
en el siguiente ejemplo, hemos actualizado los valores de la segunda tabla uniendo los valores de la primera tabla especificando la condición en la cláusula WHERE.
actualizar los valores de la segunda tabla uniendo valores de la primera tabla:
crear dos tablas con datos:
actualizar los valores de la segunda tabla uniendo valores de la primera tabla:
postgres=# UPDATE states SET Name = countries.Name FROM countries WHERE states.ID = countries.ID;
Result:
postgres=# select * from states ; id | name ----+--------- 1 | America 2 | Brazil 3 | Canada(3 rows)
DELETE Statement
la instrucción DELETE se utiliza para eliminar filas existentes de una tabla.,
sintaxis
DELETE table ;
ejemplo 1
eliminar filas restringiendo una condición usando una cláusula WHERE. Si se omite la cláusula WHERE, se eliminarán todas las filas de la tabla.
postgres=# delete from departments where department_name = 'HR';
Ejemplo 2
una subconsulta recuperará primero una salida y luego se ejecutará la condición WHERE:
postgres=# DELETE FROM departmentsWHERE department_id = (SELECT department_id FROM departments where location_id=1200);
instrucción UPSERT
Usando una instrucción UPSERT, puede actualizar un registro si ya existe o insertar un nuevo registro si no lo hace. Esto se puede hacer en una sola declaración.,
ejemplo
ejemplo siguiente para el uso de INSERT…Sobre el conflicto: