Selecciones en Postgresql
PostgreSQL es uno de los sistemas de administración de bases de datos de código libre y abierto más versátiles y poderosos en el mercado actual. Históricamente Postgres desciende de un sistema llamado Ingres el cual es un sistema de bases de datos desarrollado en los años 70 en la Universidad de California en Berkeley por Michael Stonebraker y Eugene Wong. El sistema comenzó a tener soporte SQL en 1994 bajo el nombre Posgres95 y desde entonces ha ido acercándose al estándar SQL sin perder su propia identidad. En un artículo anterior comentamos como instalar postgresql en Ubuntu. Ahora vamos a explicar las operaciones básicas para comenzar a trabajar con Postgres.
Seleccionar datos
Una vez que tenemos datos dentro de nuestra base, lo mas importante es poder
consultarlos, para a partir de ahí generar reportes, utilizarlos dentro de un
programa externo para que este los presente o para que el mismo programa sea
capaz de tomar decisiones. Esto se logra con el comando SELECT
.
El ejemplo mas sencillo es seleccionar todos los datos de una tabla:
SELECT * from employees;
Este comando usa la sintaxis * para pedir todos los campos de todos los registros, como esto no siempre es lo que queremos podemos comenzar a aplicar modificadores a nuestra selección. Esto lo hacemos eligiendo sólo ciertos campos a mostrar:
SELECT first_name, last_name from employees
Este comando selecciona sólamente los campos de nombre y apellido de al tabla
empleados pero, sigue devolviendo todos los empleados que se encuentran en la
tabla. Si sólo queremos un subconjunto de empleados podemos utilizar la
condición WHERE
.
SELECT first_name, last_name FROM employees WHERE department = 'accounting';
Este comando refina nuestra selección, nos da el nombre y apellido de los empleados en el departamento de contabilidad,
podemos además, ir añadiendo condiciones al operador, con los operadores lógicos
AND
, OR
, NOT
.
Por ejemplo, queremos el nombre y apellido de los empleados de contabilidad, cuyo apellido sea Smith.
SELECT first_name, last_name FROM employees WHERE department = 'accounting'
AND last_name='Smith';
Insertar datos
Insertar un nuevo registro dentro de la base de datos es tambien muy sencillo, esto lo podemos querer cuando un empleado se da de alta, o un nuevo producto. Como ejemplo vamos a crear un nuevo asistente en el departamento de Investigación.
INSERT INTO employees(employee_id, first_name, last_name, position,
department, initial_date) VALUES (10, 'Robert', 'Callahan', 'assistant',
'research', '2019-03-21');
Modificar datos
La modificación de datos es muy importante, imaginemos que nuestro asistente del
punto anterior lleva un tiempo dentro de la compañía y el gerente decide
ascenderlo de asistente a investigador. Entonces tenemos que modificar su
posición de manera acorde. Para esto utilizaremos el comando UPPDATE
.
UPDATE employees SET position='researcher' WHERE employee_id=10;
Podemos comprobar que su posición fue modificada de manera exitosa. con la siguiente consulta.
SELECT * from employees WHERE employee_id=10;
Y vemos que la posicieon ha sido actualizada correctamente.
Conclusión
PostgreSQL es uno de los manejadores de bases de datos más utilizados en el mercado. Es un sistema de código libre y abierto, es gratuito, y tiene una gran comunidad de desarrolladores y usuarios en compañías de todos los tamaños. Postgres sigue en la parte básica de su operación la sintaxis estándar de SQL. Por lo que aprender las consultas sencillas en este manejador, permite transferir estos conocimientos a otros manejadores como SQL Server, MySQL, MariaDB y SQLite.