Lenguaje SQL (Nivel Avanzado)
Lenguaje SQL (Nivel Avanzado)
Realizado por:
Omar Azuaje
CI 29.680. 374
Adonay Izarra
CI 28.492.108
El Valle del Espíritu Santo, Febrero de 2022
Estas bases de datos se crean en lenguajes específicos que, con la ayuda de gestores,
facilitan su creación y organización permitiendo un base de datos optima para cumplir su
función. Uno de los principales lenguajes para este trabajo es SQL, el cual es un lenguaje
completo que puede ser usado por diversos gestores para la creación de las mismas.
SQL fue uno de los primeros lenguajes comerciales para el modelo relacional de Edgar
Frank Codd como se describió en su artículo de investigación de 1970 El modelo relacional de
datos para grandes bancos de datos compartidos.
Las vistas son tablas virtuales ‘que contienen’ el resultado de una consulta SELECT,
tienen la misma estructura que una tabla cualquiera, es decir, están organizadas por filas y
columnas. Una de las principales ventajas de utilizar vistas procede del hecho de que la vista
no almacena los datos, sino que hace referencia a una o varias tablas de origen mediante una
consulta SELECT, consulta que se ejecuta cada vez que se hace referencia a la vista. De esta
forma, cualquier modificación que se realice sobre los datos de las tablas de origen es
inmediatamente visible en la vista, cuando ésta vuelva a ejecutarse. Su sintaxis es:
Funciones De Agregación
Las funciones de agregación en SQL nos permiten efectuar operaciones sobre un conjunto
de resultados, pero devolviendo un único valor agregado para todos ellos. Es decir, nos
permiten obtener medias, máximos, etc... sobre un conjunto de valores.
SUM: suma los valores del campo que especifiquemos. Sólo se puede utilizar en columnas
numéricas.
AVG: devuelve el valor promedio del campo que especifiquemos. Sólo se puede utilizar
en columnas numéricas.Sub-Consultas Anidadas
Todas estas funciones se aplican a una sola columna, que especificaremos entre paréntesis,
excepto la función COUNT, que se puede aplicar a una columna o indicar un “*”. La
diferencia entre poner el nombre de una columna o un “*”, es que en el primer caso no cuenta
los valores nulos para dicha columna, y en el segundo si.
Sub-consultas anidadas
Una subconsulta es una consulta anidada dentro de una instrucción SELECT, INSERT,
UPDATE o DELETE, o dentro de otra subconsulta. Una subconsulta se puede utilizar en
cualquier lugar donde se permita una expresión. En este ejemplo, se usa una subconsulta como
una expresión de columna denominada MaxUnitPrice en una instrucción SELECT.
USE AdventureWorks2016;
GO
(SELECT MAX(OrdDet.UnitPrice)
GO
MODIFY NAME=NuevoNombreDeBaseDeDatos;
Reunión De Relaciones
Esta cláusula está diseñada precisamente para reunir registros de varias tablas, en ella
intervienen las claves primarias y foráneas, y no intervienen, o lo hacen en la cláusula
WHERE, los filtros propiamente dichos. Veamos una de las consultas que se expuso en la
lección anterior usando esta sintaxis.
La reunión externa puede verse en este caso como una reunión interna donde no es
necesario que el registro hijo tenga informada la clave foránea para ser mostrado, por ejemplo,
cuando se mostraban los cursos junto a los profesores que los imparten, como uno de los
cursos no tiene padre, es decir, no tiene un profesor asignado, o lo que es lo mismo, el campo
ID_PROFE de la tabla CURSOS está a nulo, este curso no se muestra dado que no satisface la
cláusula ON. Este recurso nos ofrece la posibilidad de mostrar estos registros con los campos
del registro padre a nulo.
Lo que se persigue con el manejo de transacciones es por un lado tener una transparencia
adecuada de las acciones concurrentes a una base de datos y por otro lado tener una
transparencia adecuada en el manejo de las fallas que se pueden presentar en una base de
datos.
Fallida: la transacción pasa a este estado tras descubrir que no puede continuar la
ejecución normal.
Abortada: la transacción pasa a este estado después de haber restablecido la base de datos
a su estado anterior.
III-Transacciones en SQL
Una transacción es una propagación de uno o más cambios en la base de datos, ya sea
cuando se crea, se modifica o se elimina un registro. En la práctica suele consistir en la
agrupación de consultas SQL y su ejecución como parte de una transacción.
Las transacciones siguen cuatro propiedades básicas, bajo el acrónimo ACID (Atomicity,
Consistency, Isolation, Durability):
https://datademia.es/blog/que-es-
https://es.wikipedia.org/wiki/SQL
http://cidecame.uaeh.edu.mx/lcc/mapa/PROYECTO/
libro14/52_lenguaje_de_definicin_de_datos_ddl.html
https://elbauldelprogramador.com/lenguaje-definicion-de-datos-ddl-vistas/
https://www.campusmvp.es/recursos/post/Fundamentos-de-SQL-Agrupaciones-y-funciones-de-
agregacion.aspx
Microsoft (2021) Subqueries (SQL Server).
https://docs.microsoft.com/en-us/sql/relational-databases/performance/subqueries?view=sql-s
https://diego.com.es/transacciones-en-sql
https://chargers090187.wordpress.com/2011/06/25/estados-de-una-transaccion/
https://topicdb.wordpress.com/1-5-manejo-de-transacciones/