El lenguaje estructurado de consultas (SQL) es un lenguaje de base de datos normalizado, utilizado por la gran mayoría de los servidores de bases de datos que manejan bases de datos relacionales u objeto-relacionales.
Es un lenguaje declarativo en el que las órdenes especifican cual debe ser el resultado y no la manera de conseguirlo (como ocurre en los lenguajes procedimentales). Al ser declarativo es muy sistemático, sencillo y con una curva de aprendizaje muy agradable ya que sus palabras clave permiten escribir las ordenes como si fueran frases en las que se especifica (en inglés) que es lo que queremos obtener.
Componentes del SQL
El lenguaje SQL está compuesto por comandos, cláusulas, operadores y funciones de agregado. Estos elementos se combinan en las instrucciones para crear, actualizar y manipular las bases de datos.
Comandos
Existen dos tipos de comandos SQL:
Los que permiten crear y definir nuevas bases de datos,campos e índices.
CREATE Utilizado para crear nuevas tablas, campos e índices
DROP Empleado para eliminar tablas e índices
ALTER Utilizado para modificar las tablas agregando campos o cambiando la definición de los campos.
Los que permiten generar consultas para ordenar, filtrar y extraer datos de la base de datos.
SELECT Utilizado para consultar registros de la base de datos que satisfagan un criterio determinado
INSERT Utilizado para cargar lotes de datos en la base de datos en una única operación.
UPDATE Utilizado para modificar los valores de los campos y registros especificados
DELETE Utilizado para eliminar registros de una tabla de una base de datos
Cláusulas
Las cláusulas son condiciones utilizadas para concretar que datos son los que se desea seleccionar o manipular.
FROM Utilizada para especificar la tabla de la cual se van a seleccionar los registros
WHERE Utilizada para especificar las condiciones que deben reunir los registros que se van a seleccionar
GROUP BY Utilizada para clasificar los registros seleccionados en grupos específicos
HAVING Utilizada para expresar la condición que debe satisfacer cada grupo
ORDER BY Utilizada para ordenar los registros seleccionados de acuerdo con un orden específico
Operadores Lógicos
AND Evalua dos condiciones y devuelve un valor de verdad sólo si ambas son ciertas.
OR Evalúa dos condiciones y devuelve un valor de verdar si alguna de las dos es cierta.
NOT Devuelve el valor contrario de la expresión.
Operadores de Comparación
< Menor que
> Mayor que
<> Distinto de
<= Menor ó Igual que
>= Mayor ó Igual que
= Igual que
Funciones de Agregación
Las funciones de agregación se usan dentro de una cláusula SELECT en grupos de registros para devolver un único valor que se aplica a un grupo de registros.
AVG Utilizada para calcular el promedio de los valores de un campo determinado
COUNT Utilizada para devolver el número de registros de la selección
SUM Utilizada para devolver la suma de todos los valores de un campo determinado
MAX Utilizada para devolver el valor más alto de un campo especificado
MIN Utilizada para devolver el valor más bajo de un campo especificado
Entrada en el cliente y exploración de la base de datos
La gestión de bases de datos se basa en la existencia de un programa servidor; que organiza los datos, recibe las consultas, las ejecuta y las devuelve; y un programa cliente que el usuario ejecuta y que lanza las consultas creadas por este al servidor. El programa cliente y el servidor no tienen siquiera porque ejecutarse en el mismo ordenador.
Existen diferentes clientes para conectar al servidor de bases de datos de PostgreSQL. Vamos a utilizar en principio uno sencillo (psql).
Si tecleamos:
psql -l
Obtendremos un listado de todas la bases de datos disponibles para el servidor.
Si queremos conectarnos a una de ellas se le especificará al teclear el comando:
psql nombreBDastos
Otro apunte:
Existen dos tipos de comandos SQL:
Los que permiten crear y definir nuevas bases de datos,campos e índices.
CREATE Utilizado para crear nuevas tablas, campos e índices
DROP Empleado para eliminar tablas e índices
ALTER Utilizado para modificar las tablas agregando campos o cambiando la definición de los campos.
Los que permiten generar consultas para ordenar, filtrar y extraer datos de la base de datos.
SELECT Utilizado para consultar registros de la base de datos que satisfagan un criterio determinado
INSERT Utilizado para cargar lotes de datos en la base de datos en una única operación.
UPDATE Utilizado para modificar los valores de los campos y registros especificados
DELETE Utilizado para eliminar registros de una tabla de una base de datos
Cláusulas
Las cláusulas son condiciones utilizadas para concretar que datos son los que se desea seleccionar o manipular.
FROM Utilizada para especificar la tabla de la cual se van a seleccionar los registros
WHERE Utilizada para especificar las condiciones que deben reunir los registros que se van a seleccionar
GROUP BY Utilizada para clasificar los registros seleccionados en grupos específicos
HAVING Utilizada para expresar la condición que debe satisfacer cada grupo
ORDER BY Utilizada para ordenar los registros seleccionados de acuerdo con un orden específico
Operadores Lógicos
AND Evalua dos condiciones y devuelve un valor de verdad sólo si ambas son ciertas.
OR Evalúa dos condiciones y devuelve un valor de verdar si alguna de las dos es cierta.
NOT Devuelve el valor contrario de la expresión.
Operadores de Comparación
< Menor que
> Mayor que
<> Distinto de
<= Menor ó Igual que
>= Mayor ó Igual que
= Igual que
Funciones de Agregación
Las funciones de agregación se usan dentro de una cláusula SELECT en grupos de registros para devolver un único valor que se aplica a un grupo de registros.
AVG Utilizada para calcular el promedio de los valores de un campo determinado
COUNT Utilizada para devolver el número de registros de la selección
SUM Utilizada para devolver la suma de todos los valores de un campo determinado
MAX Utilizada para devolver el valor más alto de un campo especificado
MIN Utilizada para devolver el valor más bajo de un campo especificado
Entrada en el cliente y exploración de la base de datos
La gestión de bases de datos se basa en la existencia de un programa servidor; que organiza los datos, recibe las consultas, las ejecuta y las devuelve; y un programa cliente que el usuario ejecuta y que lanza las consultas creadas por este al servidor. El programa cliente y el servidor no tienen siquiera porque ejecutarse en el mismo ordenador.
Existen diferentes clientes para conectar al servidor de bases de datos de PostgreSQL. Vamos a utilizar en principio uno sencillo (psql).
Si tecleamos:
psql -l
Obtendremos un listado de todas la bases de datos disponibles para el servidor.
Si queremos conectarnos a una de ellas se le especificará al teclear el comando:
psql nombreBDastos
Otro apunte: