Documentos de Académico
Documentos de Profesional
Documentos de Cultura
INTRODUCCION
Un lenguaje de consulta es un lenguaje con el que el usuario solicita informacin de la base de datos: se construye una expresin que contesta el DBMS a partir de la informacin que tiene Se estudiar la cuestin de las consultas desde una perspectiva abstracta, presentando los principales operadores estndar que se han definido en el Modelo Relacional El lgebra relacional es un lenguaje puro que es rgido y formal, pero que ilustra las tcnicas fundamentales para la extraccin de la informacin
Conceptos Bsicos
Una Base de Datos Relacional muestra las tablas en forma de filas y columnas
ciudad (nro_ciudad nom_ciudad)
C1 C2 C3 La paz Cochabamba Santa Cruz
Dominio. Es el conjunto de todos los valores permitidos que una columna puede tomar. Se tiene D1,D2,...,Dn, si tenemos n columnas.
Conceptos Bsicos
Tupla. Cada una de las filas de una tabla se compone de n elementos (V1,V2,..,Vn). En matemticas este conjunto ordenado de elementos se llama tupla Relacin. Es un subconjunto del producto cartesiano de una lista de dominios, no necesariamente disjuntos
Es por esto que en el lgebra relacional se denomina relacin a una tabla y tupla a un fila de tabla.
Smbolos de puntuacin: parntesis "(", ")" y coma ",". Smbolos de variables: se representan mediante letras minsculas del final del alfabeto: r, s, t, u, v, w, x, y, z. Smbolos de constantes: se representan mediante letras minsculas del principio del alfabeto: a, b, c, d, e. Smbolos de funciones: tambin se representan con letras minsculas, pero del centro del alfabeto: f, g, h, i .. Smbolos de predicados: se representan mediante letras maysculas. Operadores lgicos: (negacin), (implicacin), (conjuncin) y (disyuncin). cuantificadores: (cuantificador universal) y (cuantificador existencial).
Operadores (=,>, <, >=, <=, <>) La jerarqua en la precedencia de los operadores y cuantificadores es (de mayor a menor): 1) , , 2) 3) 4) Dicha precedencia se puede alterar utilizando los parntesis. Los operadores y y el cuantificador se introducen en el lenguaje por conveniencia, ya que en realidad no son necesarios pues:
F G ( F )G x(F) x(F) FG ( FG )
Las operaciones de lgebra relacional manipulan relaciones. Esto significa que estas operaciones usan uno o dos relaciones existentes para crear una nueva relacin. Esta nueva relacin puede entonces usarse como entrada para una nueva operacin
Unin ()
La operacin de unin permite combinar datos de varias relaciones. Supongamos que una determinada empresa internacional posee una tabla de empleados para cada uno de los pases en los que opera. Para conseguir un listado completo de todos los empleados de la empresa tenemos que realizar una unin de todas las tablas de empleados de todos los pases. No siempre es posible realizar consultas de unin entre varias tablas, para poder realizar esta operacin es necesario e imprescindible que las tablas a unir tengan las mismas estructuras, que sus campos sean iguales.
Operacin Unin
Ejemplo:
Teniendo dos relaciones R y S, RS, es el conjunto de tuplas que pertenecen a R, a S o a ambas. R y S deben tener esquemas con conjuntos idnticos de atributos
Diferencia () La operacin diferencia permite identificar filas que estn en una relacin y no en otra. Tomando como referencia el caso anterior, deberamos aplicar una diferencia entre la tabla R y la tabla S para saber aquellas personas que no estn en las dos tablas
Operacin Diferencia,
La diferencia de dos relaciones R y S, R S, es el conjunto de tuplas de R que no pertenecen a S. R y S deben tener esquemas con conjuntos idnticos de atributos
Interseccin ()
La operacin de interseccin permite identificar filas que son comunes en dos relaciones Al igual que la operacin Union, para poder realizar esta operacin es necesario e imprescindible que las tablas a unir tengan las mismas estructuras, que sus campos sean iguales.
Interseccin
Equivalencia
RS ( R ( R S) )
Interseccin () La operacin de interseccin permite identificar filas que son comunes en dos relaciones Al igual que la operacin Unin, para poder realizar esta operacin es necesario e imprescindible que las tablas a unir tengan las mismas estructuras, que sus campos sean iguales.
Interseccin
Equivalencia
RS ( R ( R S) )
Producto (x) La operacin producto consiste en la realizacin de un producto cartesiano entre dos tablas dando como resultado todas las posibles combinaciones entre los registros de la primera y los registros de la segunda. Esta operacin se entiende mejor con el siguiente ejemplo:
Sean R y S dos relaciones de grado m y n, respectivamente. El producto cartesiano, RS, es una relacin de grado m + n formada por todas las posibles tuplas en las que los m primeros elementos constituyen una tupla de R y los n ltimos una tupla de S
Seleccin () Por medio de esta operacin se posibilita la seleccin de un subconjunto de tuplas de una relacin que corresponden a una condicin (columnaOPERADORvalor) determinada El grado (total de columnas de la Relacin), se conserva
Operacin Seleccin,
F(R)
Esta operacin es la que normalmente se conoce como consulta. En este tipo de consulta se emplean los diferentes operadores de comparacin (=,>, <, >=, <=, <>) Y los operadores lgicos:
(and),(or), (not)
Operacin Seleccin,
Entonces, la seleccin, F(R), es el conjunto de tuplas t de R tales que, cuando para todo i sustituimos el isimo componente de t por la ocurrencia correspondiente en F, la frmula es verdadera
Operacin Seleccin,
Ejemplos Seleccin,
Ejemplos Seleccin,
Ejemplos Seleccin,
Operacin Proyeccin,
Operacin Proyeccin,
Ejemplos Proyeccin,
Ejemplos Proyeccin,
Ejemplos Proyeccin,
Reunin (Join)
La reunin se utiliza para recuperar datos a travs de varias tablas conectadas unas con otras mediante clusulas JOIN. La operacin JOIN se puede combinar con las operaciones seleccin y proyeccin
Ejemplo: unin de R y S, donde se refiere a una condicin arbitraria sobre los atributos de R y S, que representaremos por (A>=E) R|><| S, se construye como:
Se forma el producto cartesiano R y S Se selecciona, en el producto, solo la tupla que cumplan la condicin C Es un producto cartesiano donde nos interesan nicamente algunas tuplas que hacen "match=iguala" en algn criterio.
Divisin
Es la operacin del lgebra relacional que crea una nueva relacin, seleccionando las filas en una relacin que se corresponden con todas las filas en otra relacin.
Operador Divisin,
Sean R y S relaciones de grado r y s, respectivamente, donde r > s y S. Entonces, el cociente, RS, es el conjunto de tuplas t de grado (r-s), tales que para toda tupla u de S, la tupla (t, u) esta en R.
Operador Division,
Renombrar Dada la relacin R, el renombrado de R a S, S(R), es una relacin que tiene exactamente las mismas tuplas y los mismos atributos que R, slo que el nombre de la relacin es S
Operador Renombrar,