SQL 1. Definición El lenguaje de consulta estructurado (SQL) es un lenguaje de base de datos normalizado, es un lenguaje surgido de un proyecto de investigación de IBM para el acceso a bases de datos relacionales. SQL además realiza funciones de definición, control y gestión de la base de datos .   Una de sus características es el manejo del álgebra y el cálculo relacional permitiendo efectuar consultas con el fin de recuperar -de una forma sencilla- información de interés de una base de datos, así como también hacer cambios sobre ella
2. Componentes del SQL  El lenguaje  SQL  está compuesto por comandos, cláusulas, operadores y funciones. Estos elementos se combinan en las instrucciones para crear, actualizar y manipular las bases de datos.  2.1 Comandos  Existen dos tipos de comandos SQL: Los DLL  que permiten crear y definir nuevas bases de datos, campos e índices.  Comando   Descripción   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.
Comandos DML   Los  DML  que permiten generar consultas para ordenar, filtrar y extraer datos de la base de datos. Comando Descripción   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
2.1 Cláusulas Las cláusulas son condiciones de modificación utilizadas para definir los datos que desea seleccionar o manipular. Comando   Descripción   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 separar 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 de Comparación   Operador   Uso   <   Menor que   >   Mayor que   <>   Distinto de   <=   Menor ó Igual que   >=   Mayor ó Igual que BETWEEN Utilizado para especificar un intervalo de valores.   LIKE   Utilizado en la comparación de un modelo   In   Utilizado para especificar registros de una base de datos
Funciones de Agregado   Las funciones de agregado 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. Comando Descripción 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
3. Características del lenguaje Una sentencia SQL es como una frase (escrita en inglés) con la que decimos lo que queremos obtener y de donde obtenerlo.  Todas las sentencias empiezan con un verbo (palabra reservada que indica la acción a realizar), seguido del resto de cláusulas, algunas obligatorias y otras opcionales que completan la frase.  Todas las sentencias siguen una sintaxis para que se puedan ejecutar correctamente.
ALGEBRA RELACIONAL Es un lenguaje de consulta procedimental. Consta de un conjunto de operaciones que toman como entrada una o dos relaciones y producen como resultado una nueva relación.
Operaciones fundamentales Las operaciones fundamentales del algebra relacional son: Selección Proyección  Unión Diferencia de conjuntos Producto cartesiano  Renombramiento EXISTEN OTRAS OPERACIONES Intersección  de conjuntos Reunión natural División  Asignación
Relacion préstamo Numero – prestamo Nombre – sucursal Importe P -11 Collado mediano 900 P -14 Centro 1500 P -15 Navacerrada 1500 P -16 Navacerrada 1300 P -17 Centro 1000 P -23 Moralzarzal 2000 P -93 Becerril 500
Operación selección Selecciona tuplas que satisfacen un predicado dado, se utiliza la letra sigma minúscula  (σ)   para denotar la selección. El predicado aparece como subíndice de  (σ)  la relación del argumento se da entre paréntesis a continuación de  σ   σ nombre=<<Navacerrada>>(préstamo) Se puede buscar todas las tuplas mayores a 1.200 escribiendo σ importe>1200(prestamo) Numero-prestamo Nombre-sucursal importe P-15 Navacerrada 1500 P-16 Navacerrada 1300
En general se permiten las comparaciones =, ≠, <, ≤, > o ≥, se pueden combinar varios predicados en uno utilizando La conectivas (^) o (v). Por lo tanto para encontrar las tuplas correspondientes a prestamos de mas de 1.200 concedidos por la sucursal de Navacerrada se escribe σ nombre-sucursal=<<Navacerrada>>^importe>1200( préstamo ) El predicado puede incluir comparaciones entre dos atributos.
Operación proyección Es una operación unaria que devuelve su relacion de argumentos, excluyendo algunos argumentos. Dado que las relaciones son conjuntos, se eliminan todas las filas duplicadas. La proyeccion se denota con la letra griega pi ( π ). Se crea un lista de los atributos que se desea que aparezcan en el resultado como subindice de  π   π numero-prestamo,importe (prestamo) numero - préstamo importe P-11 900 P-14 1500 P-15 1500 P-16 1300 P-17 1000 P-23 2000 P-93 500

Compiladores1

  • 1.
    SQL 1. DefiniciónEl lenguaje de consulta estructurado (SQL) es un lenguaje de base de datos normalizado, es un lenguaje surgido de un proyecto de investigación de IBM para el acceso a bases de datos relacionales. SQL además realiza funciones de definición, control y gestión de la base de datos . Una de sus características es el manejo del álgebra y el cálculo relacional permitiendo efectuar consultas con el fin de recuperar -de una forma sencilla- información de interés de una base de datos, así como también hacer cambios sobre ella
  • 2.
    2. Componentes delSQL El lenguaje SQL está compuesto por comandos, cláusulas, operadores y funciones. Estos elementos se combinan en las instrucciones para crear, actualizar y manipular las bases de datos. 2.1 Comandos Existen dos tipos de comandos SQL: Los DLL que permiten crear y definir nuevas bases de datos, campos e índices. Comando Descripción 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.
  • 3.
    Comandos DML Los DML que permiten generar consultas para ordenar, filtrar y extraer datos de la base de datos. Comando Descripción 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
  • 4.
    2.1 Cláusulas Lascláusulas son condiciones de modificación utilizadas para definir los datos que desea seleccionar o manipular. Comando Descripción 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 separar 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
  • 5.
    Operadores de Comparación Operador Uso < Menor que > Mayor que <> Distinto de <= Menor ó Igual que >= Mayor ó Igual que BETWEEN Utilizado para especificar un intervalo de valores. LIKE Utilizado en la comparación de un modelo In Utilizado para especificar registros de una base de datos
  • 6.
    Funciones de Agregado Las funciones de agregado 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. Comando Descripción 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
  • 7.
    3. Características dellenguaje Una sentencia SQL es como una frase (escrita en inglés) con la que decimos lo que queremos obtener y de donde obtenerlo. Todas las sentencias empiezan con un verbo (palabra reservada que indica la acción a realizar), seguido del resto de cláusulas, algunas obligatorias y otras opcionales que completan la frase. Todas las sentencias siguen una sintaxis para que se puedan ejecutar correctamente.
  • 8.
    ALGEBRA RELACIONAL Esun lenguaje de consulta procedimental. Consta de un conjunto de operaciones que toman como entrada una o dos relaciones y producen como resultado una nueva relación.
  • 9.
    Operaciones fundamentales Lasoperaciones fundamentales del algebra relacional son: Selección Proyección Unión Diferencia de conjuntos Producto cartesiano Renombramiento EXISTEN OTRAS OPERACIONES Intersección de conjuntos Reunión natural División Asignación
  • 10.
    Relacion préstamo Numero– prestamo Nombre – sucursal Importe P -11 Collado mediano 900 P -14 Centro 1500 P -15 Navacerrada 1500 P -16 Navacerrada 1300 P -17 Centro 1000 P -23 Moralzarzal 2000 P -93 Becerril 500
  • 11.
    Operación selección Seleccionatuplas que satisfacen un predicado dado, se utiliza la letra sigma minúscula (σ) para denotar la selección. El predicado aparece como subíndice de (σ) la relación del argumento se da entre paréntesis a continuación de σ σ nombre=<<Navacerrada>>(préstamo) Se puede buscar todas las tuplas mayores a 1.200 escribiendo σ importe>1200(prestamo) Numero-prestamo Nombre-sucursal importe P-15 Navacerrada 1500 P-16 Navacerrada 1300
  • 12.
    En general sepermiten las comparaciones =, ≠, <, ≤, > o ≥, se pueden combinar varios predicados en uno utilizando La conectivas (^) o (v). Por lo tanto para encontrar las tuplas correspondientes a prestamos de mas de 1.200 concedidos por la sucursal de Navacerrada se escribe σ nombre-sucursal=<<Navacerrada>>^importe>1200( préstamo ) El predicado puede incluir comparaciones entre dos atributos.
  • 13.
    Operación proyección Esuna operación unaria que devuelve su relacion de argumentos, excluyendo algunos argumentos. Dado que las relaciones son conjuntos, se eliminan todas las filas duplicadas. La proyeccion se denota con la letra griega pi ( π ). Se crea un lista de los atributos que se desea que aparezcan en el resultado como subindice de π π numero-prestamo,importe (prestamo) numero - préstamo importe P-11 900 P-14 1500 P-15 1500 P-16 1300 P-17 1000 P-23 2000 P-93 500