Lenguaje de consulta estructurado SQL

Introducción a SQL

Concepto: Lenguaje estructurado de consulta, que permite acceder a los datos almacenados en las bases de datos relacionales por medio de sentencias definidas.

Características: 1.Lenguaje declarativo (no procedimental) que permite obtener información indicando lo que se requiere de una manera natural (del inglés). 2. Al ser un lenguaje estándar, puede ser usado en todos los sistemas de bases de datos relacionales del mercado.

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.

Operadores en SQL

Operadores en SQL

Consultas a múltiples tablas

Las consultas pueden acceder a varias tablas a la vez o acceder a la misma tabla de tal forma que se procesen varias filas de la tabla al mismo tiempo. Una consulta que accede a varias filas de la misma tabla o de tablas diferentes a la vez se denomina una consulta de unión.

Consultas de unión interna
Una unión interna utiliza un operador de comparación para hacer coincidir filas de dos tablas que se basan en los valores de columnas comunes de cada una de las tablas. Las uniones internas son el tipo de unión más común.co

Consultas de unión externa a la izquierda
Una consulta de unión externa a la izquierda devuelve todas las filas de la tabla de la izquierda, no solo aquellas que coinciden con la columna unida.

Consultas de unión automática
Una consulta de unión automática une una tabla consigo misma.

Subconsultas (SQL Server)

Una subconsulta es una consulta anidada en una instrucción SELECT, INSERT, UPDATE o DELETE, o bien en otra subconsulta. Las subconsultas se pueden utilizar en cualquier parte en la que se permita una expresión. Una subconsulta también puede ser una consulta o selección interna, mientras que la instrucción que contiene una subconsulta también es conocida como consulta o selección externa.

Consultas SELECT

Consultas INSERT

Consultas UPDATE

Consultas DELETE

Sentencias y Cláusulas SQL Las operaciones de SQL reciben el nombre de sentencias: denominadas Lenguaje de Procedimientos SQL, que permiten que el SQL pueda utilizarse de forma similar a la escritura de un programa en un lenguaje de programación estructurado y están formadas por diferentes partes que se denominan cláusulas: que son condiciones de modificación utilizadas para definir los datos que desea seleccionar o manipular.. Ejemplo:

Sentencias y Cláusulas SQL                                                 Las operaciones  de SQL reciben el nombre de sente

Sentencia de definición: estas son las sentencias que permiten definir todos los elementos con los que podemos interactuar. (DDL)

CREATE Creación de tablas
ALTER Modificación de la estructura de una tabla sin suprimirla y volver a crearla, como añadir columnas, eliminar columnas o cambiar definiciones de columna (por ejemplo, longitud o los valores predeterminados
DROP Eliminación de objetos (como tablas) de la base de datos
PARTITION Particionado de tablas

Sentencia de manipulación: al momento de crear las bases de datos con sus respectivas
tablas y campos, debemos insertar, modificar y borrar los valores de las filas de las tablas. Para
poder hacer esto, el SQL92 nos ofrece unas sentencias con objetivos específicos (DML)

- INSERT se utiliza para insertar nuevos registros en una tabla de una base de datos. Esta sentencia permite agregar datos a la tabla, creando nuevas filas con valores específicos en las columnas correspondientes.
- UPDATE se utiliza para modificar o actualizar los registros existentes en una tabla. Esta sentencia permite cambiar los valores de una o más columnas en las filas de la tabla que cumplan con una condición específica.
- DELETE se utiliza para eliminar registros de una tabla en una base de datos. Esta sentencia permite eliminar una o varias filas que cumplan con una condición específica . - SELECT: es una sentencia fundamental que se utiliza para recuperar datos de una o más tablas en una base de datos. Su función principal es realizar consultas y extraer información específica de la base de datos en función de las condiciones y criterios que se determinen.

Sentencias de control: Estas son aquellas que permiten incluir mecanismos de control para resolver problemas de concurrencia de usuarios y garantizar la seguridad de los datos. Para la concurrencia de usuarios se puede utilizar el concepto de transacción, y para la seguridad se puede autorizar y desautorizar a usuarios a acceder a la base de datos. (SQL)

Ejemplo:

Ejemplo:

-Sentencia CALL: transfiere el control de un programa objeto a otro dentro de la unidad de ejecución. -Sentencia CASE: para modificar la secuencia de ejecución de instrucciones en función del valor de una o más expresiones. -Sentencia LEAVE: se utiliza para transferir el flujo de control fuera de un bucle o sentencia compuesta

Cláusulas en SQL

Cláusula ORDER BY: especifica el orden en el que desea que se devuelvan las filas seleccionadas. El orden se ordena por orden de clasificación ascendente o descendente del valor de una columna o expresión

Cláusula WHERE: se utiliza para filtrar registros y sólo extrae los registros que cumplen un determinado criterio.

Cláusula GROUP B: especifica una tabla de resultados intermedia que consta de una agrupación de las filas de R. R es el resultado de la cláusula anterior de la subselección.

Cláusula JOIN: se utiliza para combinar filas de varias tablas basándose en una columna relacionada entre estas tablas.

Operaciones sobre conjuntos Las sentencias SQL que contienen operadores de conjunto se denominan consultas compuestas y cada una de las sentencias SELECT de una consulta compuesta se denomina consulta de componente.

La operación INTERSECT combina los resultados de dos consultas en un único resultado que comprime todas las filas comunes para ambas consultas.

La operación EXCEPT/MINUS encuentra la diferencia entre las dos consultas y el resultado comprime las filas que pertenecen únicamente a la primera consulta.

La operación UNION La operación UNION combina los resultados de dos subconsultas en un único resultado que comprime las filas que devuelven ambas consultas. UNION [DISTINCT] y UNION ALL

Con las operaciones de conjunto estándar UNION, INTERSECT y EXCEPT/MINUS, puede combinar los resultados desde dos o más sentencias SELECT para construir consultas más complejas.

UNION [DISTINCT] y UNION ALL
INTERSECT [DISTINCT] y INTERSECT ALL
EXCEPT [DISTINCT] o MINUS [DISTINCT] y EXCEPT ALL, MINUS ALL

Subconsultas Correlacionadas Es una subconsulta que SQL podría necesitar volver a evaluar cuando examina cada fila nueva (la cláusula WHERE) o cada grupo de filas (la cláusula HAVING) en la sentencia SELECT de nivel externo.

Nombres y referencias correlacionados :Una referencia correlacionada puede aparecer en una condición de búsqueda en una subconsulta

Ejemplos

subconsulta correlacionada en una cláusula WHERE

subconsulta correlacionada en una cláusula HAVING

subconsulta correlacionada en una lista de selección

subconsulta correlacionada en una sentencia UPDATE

subconsulta correlacionada en una sentencia DELETE