Operaciones básicas de datos en PostgreSQL

PostgreSQLPostgreSQLBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, exploraremos las operaciones básicas de datos en PostgreSQL. El objetivo principal es aprender a manipular datos dentro de una base de datos PostgreSQL utilizando comandos SQL fundamentales.

Comenzaremos conectándonos a la base de datos y creando una tabla employees con columnas para ID, nombre y departamento. Luego, aprenderemos a insertar datos en la tabla utilizando la declaración INSERT INTO. A continuación, cubriremos la consulta de datos con SELECT, la actualización de registros existentes y la eliminación de registros. Este laboratorio proporciona una introducción práctica a las técnicas esenciales de gestión de datos en PostgreSQL.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL postgresql(("PostgreSQL")) -.-> postgresql/PostgreSQLGroup(["PostgreSQL"]) postgresql/PostgreSQLGroup -.-> postgresql/table_init("Create Basic Table") postgresql/PostgreSQLGroup -.-> postgresql/row_add("Insert One Row") postgresql/PostgreSQLGroup -.-> postgresql/data_all("Select All Data") postgresql/PostgreSQLGroup -.-> postgresql/data_where("Filter With WHERE") postgresql/PostgreSQLGroup -.-> postgresql/data_sort("Sort Query Results") postgresql/PostgreSQLGroup -.-> postgresql/row_edit("Update Single Row") postgresql/PostgreSQLGroup -.-> postgresql/row_drop("Delete One Row") subgraph Lab Skills postgresql/table_init -.-> lab-550897{{"Operaciones básicas de datos en PostgreSQL"}} postgresql/row_add -.-> lab-550897{{"Operaciones básicas de datos en PostgreSQL"}} postgresql/data_all -.-> lab-550897{{"Operaciones básicas de datos en PostgreSQL"}} postgresql/data_where -.-> lab-550897{{"Operaciones básicas de datos en PostgreSQL"}} postgresql/data_sort -.-> lab-550897{{"Operaciones básicas de datos en PostgreSQL"}} postgresql/row_edit -.-> lab-550897{{"Operaciones básicas de datos en PostgreSQL"}} postgresql/row_drop -.-> lab-550897{{"Operaciones básicas de datos en PostgreSQL"}} end

Insertar datos en tablas

En este paso, aprenderemos cómo insertar datos en tablas en PostgreSQL. Insertar datos es una operación fundamental para poblar su base de datos con información. Cubriremos la sintaxis básica y proporcionaremos ejemplos para ayudarle a comprender el proceso.

Antes de comenzar, asegúrese de tener PostgreSQL instalado y en ejecución. Puede conectarse a su servidor PostgreSQL utilizando la herramienta de línea de comandos psql.

Primero, conectémonos a la base de datos. Abra su terminal y ejecute el siguiente comando:

sudo -u postgres psql

Ahora que estamos conectados a la base de datos, creemos una tabla simple llamada employees si aún no existe. Esta tabla almacenará información sobre los empleados, como su ID, nombre y departamento.

CREATE TABLE IF NOT EXISTS employees (
    id SERIAL PRIMARY KEY,
    name VARCHAR(50),
    department VARCHAR(50)
);

Esta declaración SQL crea una tabla llamada employees con tres columnas:

  • id: Un entero que se incrementa automáticamente con cada nuevo registro (usando SERIAL). También es la clave primaria (primary key) de la tabla.
  • name: Una cadena de texto (hasta 50 caracteres) para almacenar el nombre del empleado.
  • department: Una cadena de texto (hasta 50 caracteres) para almacenar el departamento del empleado.

Ahora, insertemos algunos datos en la tabla employees. Insertaremos tres registros de empleados.

INSERT INTO employees (name, department) VALUES ('Alice Smith', 'Sales');
INSERT INTO employees (name, department) VALUES ('Bob Johnson', 'Marketing');
INSERT INTO employees (name, department) VALUES ('Charlie Brown', 'Engineering');

Cada declaración INSERT INTO agrega una nueva fila a la tabla employees. Especificamos el nombre de la tabla (employees) y las columnas en las que estamos insertando datos (name, department). La palabra clave VALUES es seguida por los datos reales que queremos insertar, encerrados entre paréntesis.

Para verificar que los datos se han insertado correctamente, podemos consultar la tabla employees utilizando la declaración SELECT.

SELECT * FROM employees;

Esto mostrará todas las filas y columnas en la tabla employees. Debería ver los tres registros de empleados que acabamos de insertar. La salida debería verse similar a esto:

 id |     name      | department
----+---------------+------------
  1 | Alice Smith   | Sales
  2 | Bob Johnson   | Marketing
  3 | Charlie Brown | Engineering
(3 rows)
Output after inserting data in table

Ahora ha insertado correctamente datos en una tabla PostgreSQL. Puede continuar insertando más registros según sea necesario.

Finalmente, salga del shell psql escribiendo:

\q

Esto le devolverá a la terminal.

Consultar datos con SELECT

En este paso, aprenderemos cómo consultar datos de tablas en PostgreSQL utilizando la declaración SELECT. La declaración SELECT es la base para recuperar información de su base de datos. Cubriremos la sintaxis básica, el filtrado y el ordenamiento para ayudarle a dominar la recuperación de datos.

Primero, asegúrese de estar conectado a la base de datos. Si aún no está conectado, abra su terminal y ejecute el siguiente comando:

sudo -u postgres psql

Aprendamos cómo seleccionar columnas específicas. Supongamos que solo queremos recuperar las columnas name y department.

SELECT name, department FROM employees;

Esta declaración devolverá solo las columnas name y department para todas las filas en la tabla employees. La salida debería verse similar a esto:

     name      | department
---------------+------------
 Alice Smith   | Sales
 Bob Johnson   | Marketing
 Charlie Brown | Engineering
(3 rows)

Ahora, agreguemos una cláusula WHERE para filtrar los resultados. Supongamos que queremos recuperar solo los empleados que trabajan en el departamento de 'Sales'.

SELECT name, department FROM employees WHERE department = 'Sales';

La cláusula WHERE especifica una condición que debe cumplirse para que una fila se incluya en el conjunto de resultados (result set). En este caso, solo estamos seleccionando las filas donde la columna department es igual a 'Sales'. La salida debería ser:

     name      | department
---------------+------------
 Alice Smith   | Sales
(1 row)

Finalmente, aprendamos cómo ordenar los resultados utilizando la cláusula ORDER BY. Supongamos que queremos recuperar todos los empleados, ordenados por su nombre en orden ascendente.

SELECT name, department FROM employees ORDER BY name;

Esta declaración devolverá todas las filas de la tabla employees, pero los resultados se ordenarán alfabéticamente por la columna name. La salida debería ser:

     name      | department
---------------+------------
 Alice Smith   | Sales
 Bob Johnson   | Marketing
 Charlie Brown | Engineering
(3 rows)

Para ordenar los resultados en orden descendente, puede agregar la palabra clave DESC después del nombre de la columna.

SELECT name, department FROM employees ORDER BY name DESC;

Esto ordenará los resultados en orden alfabético inverso.

Ahora ha aprendido cómo consultar datos de una tabla PostgreSQL utilizando la declaración SELECT, incluyendo cómo seleccionar columnas específicas, filtrar resultados utilizando la cláusula WHERE y ordenar resultados utilizando la cláusula ORDER BY.

Illustration for querying data in PostgreSQL

Finalmente, salga del shell psql escribiendo:

\q

Actualizar registros existentes

En este paso, aprenderemos cómo actualizar registros existentes en una tabla PostgreSQL utilizando la declaración UPDATE. Actualizar datos es esencial para mantener la información de su base de datos actual y precisa. Cubriremos la sintaxis básica y proporcionaremos ejemplos para ayudarle a comprender el proceso.

Primero, asegúrese de estar conectado a la base de datos. Si aún no está conectado, abra su terminal y ejecute el siguiente comando:

sudo -u postgres psql

Actualicemos el departamento de 'Alice Smith' a 'Human Resources' (Recursos Humanos).

UPDATE employees SET department = 'Human Resources' WHERE name = 'Alice Smith';

La declaración UPDATE modifica las filas existentes en una tabla. La cláusula SET especifica qué columnas actualizar y sus nuevos valores. La cláusula WHERE especifica qué filas actualizar. En este caso, estamos actualizando la columna department a 'Human Resources' para la fila donde la columna name es igual a 'Alice Smith'.

Para verificar que la actualización se realizó correctamente, podemos consultar la tabla employees.

SELECT * FROM employees WHERE name = 'Alice Smith';

Esto mostrará la fila para 'Alice Smith', y debería ver que la columna department se ha actualizado a 'Human Resources'. La salida debería ser similar a esto:

 id |     name      |   department
----+---------------+------------------
  1 | Alice Smith   | Human Resources
(1 row)

También puede actualizar varias columnas a la vez. Por ejemplo, actualicemos el departamento de Bob Johnson a 'Sales' (Ventas) y su nombre a 'Robert Johnson'.

UPDATE employees SET department = 'Sales', name = 'Robert Johnson' WHERE name = 'Bob Johnson';

Esta declaración actualiza tanto la columna department como la columna name para la fila donde la columna name es igual a 'Bob Johnson'.

Para verificar la actualización, consulte la tabla employees nuevamente.

SELECT * FROM employees WHERE name = 'Robert Johnson';

La salida debería ser:

 id |      name      | department
----+----------------+------------
  2 | Robert Johnson | Sales
(1 row)

Es importante tener cuidado al usar la declaración UPDATE, especialmente al omitir la cláusula WHERE. Si omite la cláusula WHERE, la declaración UPDATE actualizará todas las filas en la tabla. Por ejemplo:

UPDATE employees SET department = 'Unknown';

Esta declaración establecería la columna department en 'Unknown' para cada fila en la tabla employees. Tenga mucho cuidado al ejecutar tal declaración.

Illustration for updating records in PostgreSQL

Ahora ha aprendido cómo actualizar registros existentes en una tabla PostgreSQL utilizando la declaración UPDATE.

Finalmente, salga del shell psql escribiendo:

\q

Eliminar registros

En este paso, aprenderemos cómo eliminar registros de una tabla PostgreSQL utilizando la declaración DELETE. Eliminar datos es una operación importante para remover información obsoleta o incorrecta de su base de datos. Cubriremos la sintaxis básica y proporcionaremos ejemplos para ayudarle a comprender el proceso.

Primero, asegúrese de estar conectado a la base de datos. Si aún no está conectado, abra su terminal y ejecute el siguiente comando:

sudo -u postgres psql

Eliminemos el registro de 'Charlie Brown' de la tabla employees.

DELETE FROM employees WHERE name = 'Charlie Brown';

La declaración DELETE FROM remueve filas de una tabla. La cláusula WHERE especifica qué filas eliminar. En este caso, estamos eliminando la fila donde la columna name es igual a 'Charlie Brown'.

Para verificar que la eliminación se realizó correctamente, podemos consultar la tabla employees.

SELECT * FROM employees WHERE name = 'Charlie Brown';

Esto no debería devolver ninguna fila, indicando que el registro de 'Charlie Brown' ha sido eliminado. La salida debería ser:

 id | name | department
----+------+------------
(0 rows)

También puede eliminar múltiples filas a la vez utilizando una cláusula WHERE más compleja. Por ejemplo, si tuviera múltiples empleados en el departamento de 'Marketing', podría eliminarlos todos con una sola declaración:

DELETE FROM employees WHERE department = 'Marketing';

Es crucial ser extremadamente cuidadoso al usar la declaración DELETE, especialmente al omitir la cláusula WHERE. Si omite la cláusula WHERE, la declaración DELETE eliminará todas las filas de la tabla. Por ejemplo:

DELETE FROM employees;

Esta declaración eliminaría cada fila en la tabla employees, vaciando efectivamente la tabla. Esté absolutamente seguro de que desea eliminar todas las filas antes de ejecutar tal declaración.

Ahora ha aprendido cómo eliminar registros de una tabla PostgreSQL utilizando la declaración DELETE.

Illustration for record deletion in PostgreSQL

Verifique la tabla employees para verificar que la eliminación se realizó correctamente.

SELECT * FROM employees;

La salida debería ser:

 id | name | department
----+------+------------
(0 rows)

Finalmente, salga del shell psql escribiendo:

\q

Resumen

En este laboratorio, cubrimos las operaciones de datos fundamentales en PostgreSQL, centrándonos en la inserción de datos en tablas. Comenzamos conectándonos a la base de datos utilizando la herramienta de línea de comandos psql. Luego, creamos una tabla employees con columnas para id, name y department, especificando id como la clave primaria (primary key) con funcionalidad de auto-incremento.

Finalmente, insertamos tres registros de empleados en la tabla employees utilizando la declaración INSERT INTO, especificando el nombre de la tabla y las columnas en las que se insertarán los datos, junto con los valores correspondientes para cada registro. Esto demostró la sintaxis básica para poblar una tabla PostgreSQL con datos.