Capítulo 1
Relaciones
Observaciones.
1. Cuando ��, �� � �, se indicara con la notacióncon � mediante �”.
2. Casi siempre se tratará con relaciones entre los elementos de dos conjuntos. De
esta manera, la palabra binaria se omitirá de aquí en adelante.
3. Si es un subconjunto de
Ejemplo 1.1 Sean � 0,1Solución. Los pares de la relación �3,1� y �4,0�. Por tanto,
Ejemplo 1.2 Sea � el conjunto de estudiantes de tu universidad y
asignaturas. Sea � la relación que consta de aquellos pares
estudiante matriculado en la asignatura
Cuevas están matriculados en
Quispe, III � 01) y (María Cuevas
Ejemplo 1.3 Una línea aérea da servicio a cinco ciudades dada muestra el costo (en dólares) del viaje de
viaje de �� a �� es $100, mientras que el costo del viaje de
Definición 1.1 Sea � y subconjunto de � � �. En otras palabras, si � es una relación binaria entre ordenados ��, ��, donde �
1
, se indicara con la notación ��� y se lee como
tratará con relaciones entre los elementos de dos conjuntos. De
esta manera, la palabra binaria se omitirá de aquí en adelante.
Si es un subconjunto de � � �, diremos que � es una relación sobre el conjunto
1,2,3,4� y � 0,1,2,3�. Se define la relación
��, �� � � � � � � 4
de la relación � que satisfacen la propiedad dada, son
� �1,3�, �2,2�, �3,1�, �4,0��
el conjunto de estudiantes de tu universidad y �la relación que consta de aquellos pares ��, �� en los que
estudiante matriculado en la asignatura �. Por ejemplo, si Carlos Quispe y María
Cuevas están matriculados en III � 01, que es Matemática Discreta, los
María Cuevas, III � 01) pertenece a �.
línea aérea da servicio a cinco ciudades ��, ��, ��, �dada muestra el costo (en dólares) del viaje de �� a ��. En consecuencia, el costo del
es $100, mientras que el costo del viaje de �� a �� es $200.
�� �� �� �� �� �� 140 100 150 200 �� 190 200 160 220 �� 110 180 190 250 �� 190 200 120 150 �� 200 100 200 150
� ��, ��/� � � ! � � ��
y � dos conjuntos. Una relación binaria � des una relación binaria entre � y �, � es un conjunto de pares � � � y � � �. Simbólicamente
y se lee como “� se relaciona
tratará con relaciones entre los elementos de dos conjuntos. De
es una relación sobre el conjunto �.
Se define la relación � mediante
son �1,3�, �2,2�,
� el conjunto de
en los que � es un
. Por ejemplo, si Carlos Quispe y María
, que es Matemática Discreta, los pares (Carlos
�� y ��. La tabla . En consecuencia, el costo del
es $200.
de � en � es un
es un conjunto de pares
Definiendo la relación � sobre el conjunto de ciudades siguiente manera: ����� si y sólo si el costo de ir de
dólares. Determine �. Solución.
La relación � es el subconjunto de
donde el costo del viaje de � ���, ���, ���, ���, ���,
Dominio y rango de una relación
Ejemplo 1.4 Considerando el ejemplo
"�Relación Identidad
Relación Inversa
Ejemplo 1.5 Sean � 2,3mediante
Entonces � �#� Es claro ver que
"�$�
El dominio y el rango de una relaciónconjuntos respectivamente
Una relación sobre un conjunto � ��, ��/� � �� y es denotado por
Sea � % � � �. La inversa
consta de aquellos pares ordenados obtenidos al intercambiar los elementos de los pares ordenados de �
2
sobre el conjunto de ciudades � ��, ��, �si y sólo si el costo de ir de �� a �� es menor o igual a 180
es el subconjunto de � � � formado por todas las ciudades
donde el costo del viaje de �� a �� es menor o igual a 180 dólares. Por tanto,� , ���, ���, ���, ���, ���, ���, ���, ���, ���, ���, ���, ��relación
Considerando el ejemplo 1.1, se observa que
"� 1,2,3,4� , $� 0,1,2,3�
3,4,5� y � 6,8,10,11�. Se define la relación
��� ) � divide a �
�2,6�, �2,8�, �2,10�, �3,6�, �4,8�, �5,10��
�6,2�, �8,2�, �10,2�, �6,3�, �8,4�, �10,5��
"� $�/0 2,3,4,5� $� "�/0 6,8,10�
� � � �: ��� para algún � � �� � � � �: ��� para algún � � ��
El dominio y el rango de una relación � % � � �, están dados por los siguientes conjuntos respectivamente
Una relación sobre un conjunto � se conoce como relación de identidad,
y es denotado por 78.
�#� ��, ��/ ��, �� � ��
inversa de �, denotada por �#�, es la relación de consta de aquellos pares ordenados obtenidos al intercambiar los elementos de � i.e.,
��, ��, ��� de la es menor o igual a 180
formado por todas las ciudades 9��, ��:, en
es menor o igual a 180 dólares. Por tanto, � ���, ���, ���, ����
e define la relación � de � en �
�
, están dados por los siguientes
relación de identidad, si
, es la relación de � a � que consta de aquellos pares ordenados obtenidos al intercambiar los elementos de
1.1 Propiedades de las relaciones sobre un conjunto
Ejemplo 1.6 Sean � � Determine si � es reflexiva, simétrica, antisimétric cada caso.
Solución.
� es no reflexiva, puesto que � es no simétrica, puesto que � es no antisimétrica� es transitiva, dadosla relación �, implican que los pares de la forma
Observaciones.
1. Si existen �, � � � tales que � no es antisimétrica.2. La simetría y la antisimétric� 1,2,3� definamos las relaciones,�
Así, � no es simétrica ni antisimétrica, y
1.2 Combinación de relaciones
Si � y ; denotan relaciones, definimos las siguientes operaciones
Definición 1.2. Sea una relación sobre un conjunto
I. � es reflexiva
II. � es irreflexiva
III. � es simétrica
IV. � es antisimétrica
V. � es transitiva
VI. � es de equivalencia
� <� =� �
Intersección
Unión
Diferencia
Complemento
3
Propiedades de las relaciones sobre un conjunto.
1,2,3,4�. Si � es una relación sobre � dada por�2,2�, �2,3�, �2,4�, �3,2�, �3,3�, �3,4�� es reflexiva, simétrica, antisimétrica o transitiva, justificando en
, puesto que �1,1� > �. no simétrica, puesto que �2,4� � � pero �4,2� > �.
antisimétrica, puesto que �2,3� � � y �3,2� � �, pero 2dados que todos los pares de la forma ��, �� y ��,
, implican que los pares de la forma ��, �� � �.
tales que ��, �� � � , y ��, �� � �, pero � Bno es antisimétrica.
La simetría y la antisimétrica no son el negativo del otro. Por ejemplo, en definamos las relaciones, �1,3�, �3,1�, �2,3�� , ; �1,1�, �2,2��
no es simétrica ni antisimétrica, y ; es tanto simétrica como antisimétrica
Combinación de relaciones.
denotan relaciones, definimos las siguientes operaciones
Sea una relación sobre un conjunto �. Se dice que:
reflexiva, si C� � �: ��, �� � �. irreflexiva, si C� � �: ��, �� > �. simétrica, si C�, � � �: ��, �� � � D ��, �� � �. antisimétrica, si C�, � � �: ��, �� � � ! ��, �� � �transitiva, si C�, �, � � �: ��, �� � � ! ��, �� � � D
equivalencia, si � es reflexiva, simétrica y transitiva.
< ; ��, ��/��, �� � � ! ��, �� � ;�
= ; ��, ��/��, �� � � E ��, �� � ;�
� ; ��, ��/��, �� � � ! ��, �� > ;�
�F ��, ��/ ��, �� > ��
dada por
a o transitiva, justificando en
B 3. � , �� que están en
B �, indica que
a no son el negativo del otro. Por ejemplo, en
�es tanto simétrica como antisimétrica
Se dice que:
D � �. D ��, �� � �. es reflexiva, simétrica y transitiva.
Ejemplo 1.7 Sean los conjuntoslas relaciones �� % � � �
����Encuentre �� G ��.
Solución. Para obtener la composición
ordenados que se forman al combinar
��, �� � �1 , �1,2� , �1,6� , �2,4� , �2,4� , �3,4� , �3,4� , �3,6� , �3,8� , Por tanto,
�� °��
Ejemplo 1.8 Sean � �1,Solución.
�2Por tanto, �3
� G ; ��, �� �Definición 1.3. Sean las relaciones de � y ;, que se denota comoobjeto intermedio � tal que
Definición 1.4. Sea � una relación en recursivamente,
Teorema. La relación �para todo I % J.
4
Sean los conjuntos � 1,2,3,4,5,6�, � 2,4,6,8,10� y y �� % � � K tales que �1,2�, �1,6�, �2,4�, �3,4�, �3,6�, �3,8�� � �2, L�, �4, M�, �4, N�, �6, N�, �8, L��
Para obtener la composición �1 G �2, se deben determinar todos los pares
ordenados que se forman al combinar ��, �� con ��, �� para obtener �� ��, �� � �2 D ��, �� � �1�2, L� �1, L� �6, N� �1, N� �4, M� �2, M� �4, N� �2, N� �4, M� �3, M� �4, N� �3, N� �6, N� �3, N� �8, L� �3, L�
�1, L�, �1, N�, �2, M�, �2, N�, �3, M�, �3, N�, �3, L��
� ,1�, �2,1�, �3,2�, �4,3��. Calcular ��.
2 � °� �1,1�, �2,1�, �3,2�, �4,2��
�2 °� �1,1�, �2,1�, �3,1�, �4,1��
� � K/ ��, �� � � ! ��, �� � ;, para algún ean las relaciones � de � en � y ; de � en K. La composición denota como � G ;, contiene los pares ��, �� si y sólo si existe un
tal que ��, �� está en � y ��, �� está en ;. Por consiguiente,
�� � �PQ� �P °�
una relación en �. La potencia �P, I � J, se defin
� sobre un conjunto � es transitiva si, y sólo si,
� y K L, M, N�, y
, se deben determinar todos los pares ��, ��, esto es,
1 G �2 � � � � � � � � � � � � � � � �
�
� � ��
. La composición si y sólo si existe un
. Por consiguiente,
se define
es transitiva si, y sólo si, �P % �,
1.3 Representación matricial de una relación
Si � y � son dos conjuntos finitos con
relación de � en �, entonces es posible representar a R � I , denotada por S�
Ejemplo 1.9 Sean los conjuntos � �1Solución.
Los elementos del conjunto A se representan como filas y los del conjunto B como columnas. Así,
Observación.
Sean �� y �� relaciones en un conjunto
y S�T U���V respectivamente. Entonces
1. S�0=�T S�0 E S�T2. S�0<�T S�0 ! S�T
Ejemplo 1.10 Sean
S�0
¿Cuáles son las matrices que representan a las relaciones
Solución. Según la observación anterior
S�0=�T S�
S�0<�T S�
5
Representación matricial de una relación.
son dos conjuntos finitos con R y I elementos respectivamente, y
, entonces es posible representar a � como una matriz de orden WR��X cuyas entradas son definidas por
R�� Y 1, si ��, �� � �0, si ��, �� > �[ Sean los conjuntos � 1,2,3,4� y � 1,2,3,4,5�. Determine
�1,1�, �2,1�, �1,4�, �3,5�, �4,4�, �4,1�, �2,3��
Los elementos del conjunto A se representan como filas y los del conjunto B como
1 2 3 4 5 1234 \ 1 0 0 1 0 1 0 1 0 0 0 0 0 0 1 1 0 0 1 0] S�
relaciones en un conjunto � representadas por las matrices
respectivamente. Entonces
U���V, donde ��� ��� E ���. U���V, donde ��� ��� ! ���. ^1 0 11 1 00 0 1_ y S�T ^0 1 00 0 11 0 1_
¿Cuáles son las matrices que representan a las relaciones �� = �� y �Según la observación anterior
0 E S�T ^1 E 0 0 E 1 1 E 01 E 0 1 E 0 0 E 10 E 1 0 E 0 1 E 1_ ^1 11 11 0�0 ! S�T ^1 ! 0 0 ! 1 1 ! 01 ! 0 1 ! 0 0 ! 10 ! 1 0 ! 0 1 ! 1_ ^0 00 00 0
elementos respectivamente, y � es una
como una matriz de orden
. Determine S� , si
�Los elementos del conjunto A se representan como filas y los del conjunto B como
epresentadas por las matrices S�0 U���V
_�� < ��?
111_
001_
3. Supongamos que �, ��� % � � � y �� %S�T U���V respectivamente, entonces la composición de las relaciones
se representa por
donde ��� 9�
Ejemplo 1.11 Halla la matriz que representa a la relación que representan a �� y ��
S�0 Solución. La matriz de �� °
1.4 Representación de relaciones usando dígrafos
Hemos visto que una relación se puede representar
ordenados o utilizando una matriz booleana. Hay otra manera importante de representar una relación por medio de una representación grafica.
Sea � una relación sobre un conjunto finito cada elemento de � se representa mediante un punto. Estos puntos se denominan nodos o vértices. Siempre que el elementopunto � al punto �. Estos arcos se llaman arcos o aristas. Los arcos empiezan desde el primer elemento de par ordenado y van al segundo elemento. La dirección se indica mediante una flecha. El diagrama que resulta se conoce como
Ejemplo 1.12 El dígrafo de la relación� �1,1�sobre el conjunto 1,2,3,4�
6
� y K tienen R, I y a elementos respectivamente% � � K representadas por las matrices
respectivamente, entonces la composición de las relaciones
S�0 ° �T S�0 b S�T U���V,
9��� ! ���: E 9��� ! ���: E … E 9��P ! �P�:
Halla la matriz que representa a la relación �� °��, siendo las matrices �
^1 0 11 1 00 0 0_ y S�T ^0 1 00 0 11 0 1_
°�� viene dado por
S�0 ° �T S�0 b S�T ^1 1 10 1 10 0 0_,
Representación de relaciones usando dígrafos
Hemos visto que una relación se puede representar ennumerandoordenados o utilizando una matriz booleana. Hay otra manera importante de representar una relación por medio de una representación grafica.
una relación sobre un conjunto finito �. Para representar �se representa mediante un punto. Estos puntos se denominan
nodos o vértices. Siempre que el elemento ��, �� � �, se dibuja un arco desde el Estos arcos se llaman arcos o aristas. Los arcos empiezan desde el
primer elemento de par ordenado y van al segundo elemento. La dirección se indica mediante una flecha. El diagrama que resulta se conoce como grafo dirigido
dígrafo de la relación � �, �1,4�, �2,1�, �2,3�, �2,4�, �3,1�, �4,1�, �4,2��� se muestra en la siguiente figura
elementos respectivamente. Sean S�0 U���V y
respectivamente, entonces la composición de las relaciones �� y �� ,
:, siendo las matrices
_
_
umerando todos sus pares ordenados o utilizando una matriz booleana. Hay otra manera importante de
� gráficamente, se representa mediante un punto. Estos puntos se denominan
, se dibuja un arco desde el Estos arcos se llaman arcos o aristas. Los arcos empiezan desde el
primer elemento de par ordenado y van al segundo elemento. La dirección se indica dirigido o dígrafo.
� ��
1.5 Partición de un conjunto
Ejemplo 1.13. En d se define
¿Cuál es la clase de equivalencia de 0 y 1?
Solución. W0X e � d/�e, 0 e � d/e f e � d/[e|2�
Por tanto, W0X h , �4
En el ejemplo anterior, se puede
Nota: Cualquier elemento �equivalencia W�X.
Ejemplo 1.14. ¿Cuáles de estas colecciones de subconjuntos son particiones de � 1,2,3,4,5,6�? (a) 1,2�, 2,3,4�, 4,5
Definición 1.5. Sea � elementos de � que se relacionan con un elemento equivalencia de i y es denotado por
Definición 1.6. Si � B j, una colección de subconjuntos no vacíos disjuntos de
Cuya unión es � recibe el nombre de partición de
subconjuntos �� es una partición de
i. �� B j, para cada k
ii. �� < �� j, para todo
iii. =� �� A.
Teorema. Si � es una relación de equivalencia sobre un conjunto no vacío Entonces
i. � � W�X, para todo ii. � � W�X, si y sólo si,
iii. Si W�X B W�X, entonces
7
Partición de un conjunto
se define la relación � dada por
��� � � f ��mod 2�
es la clase de equivalencia de 0 y 1?
0� � �� W1X e � d/�e, 1
0�mod 2�� e � d/e f
[ e � d/[�e �
4, �2,0,2,4, h � , W1X h , �3, �1,1,3,5, h
En el ejemplo anterior, se puede observar que:
W0X < W1X j
� � W�X se conoce como representante de la clase de
¿Cuáles de estas colecciones de subconjuntos son particiones de
5,6� (b) 1, �, 2,3,6�, 4�, 5� (c) 2,4,6�,
W�X e � �/e���
una relación de equivalencia en �. El conjunto de todos los que se relacionan con un elemento � � � se le llama y es denotado por W�X.
una colección de subconjuntos no vacíos disjuntos de
recibe el nombre de partición de �. Es decir, la colección de
es una partición de � si, y sólo si,
para todo k B o.
es una relación de equivalencia sobre un conjunto no vacío
, para todo � � �.
, si y sólo si, W�X W�X.
, entonces W�X < W�X j
1� � ��
1�mod 2��
[ � 1�|2�
h �
se conoce como representante de la clase de
¿Cuáles de estas colecciones de subconjuntos son particiones de
� 1,3,5�
. El conjunto de todos los se le llama clase de
una colección de subconjuntos no vacíos disjuntos de �.
. Es decir, la colección de
es una relación de equivalencia sobre un conjunto no vacío �.
Solución.
(a) Sean �� 1,2�, Auna partición de A, puesto que
(b) Sean �� 1�, A�Ck 1,2,3. Además,�� y
Por tanto ��, ��, �(c) Sean �� 2,4,6� �, pues que �� = �
1.6 Funciones Hashing
Cuando se almacena registros (datos) en un archivo de acceso directo en una
computadora, ésta puede recuperar un registro específico sin leer primero otros
registros. Lo anterior es posible s
de memoria en las cuales se almacenan registros en la forma de enteros no negativos,
llamados llaves. Una transformación que mapea el conjuntos de llaves a un conjunto
de direcciones (de celdas de memoria) s
mapeo de llaves). Aun cuando se usan varias funciones de mapeo de llaves, se
estudiara una de las comunes obtenida por el método de congruencia.
Nota: Como las funciones hashing adecuadas deben distribuir uniformemente los registros (llaves) sobre los elemenmanera adecuada. Casi siempre número máximo de registros en el archivo.
Observación. Cuando la celda de memoria con dirección
momento en el que se intenta almacenar
general, se presenta una colisión para una función hashing si p� B p�. Para resolver la colisión se recurre al siguiente método sim
política de resolución de colisiones
sigue a la celda ya ocupada será usada para almacenar el valor presente de
Definición 1.7. Si I es el número de localidades de memorias disponibles
el entero no negativo que representa la llave, la
representa las direcciones de la celda de memoria en la cual
se define como
i.e., q�e� es simplemente el residuo cuando
del conjunto 0,1,2, … , I
8
� A� 2,3,4� y A� 4,5,6�. La colección ��una partición de A, puesto que �� y �� no son disjuntos. 2,3,6�, A� 4� y A� 5�. Es claro ver que
Además, �� < �� �� < �� �� < �� j, �� < �� �� < �� �� < �� j, =�r�� �� � ��, ��� es una partición de �. � y A� 1,3,5�. La colección ��, ��� no es una partición de �� no es igual a �.
Cuando se almacena registros (datos) en un archivo de acceso directo en una
sta puede recuperar un registro específico sin leer primero otros
registros. Lo anterior es posible sólo si la computadora puede identificar las localidades
a en las cuales se almacenan registros en la forma de enteros no negativos,
. Una transformación que mapea el conjuntos de llaves a un conjunto
nes (de celdas de memoria) se conoce como función de hashing
Aun cuando se usan varias funciones de mapeo de llaves, se
estudiara una de las comunes obtenida por el método de congruencia.
: Como las funciones hashing adecuadas deben distribuir uniformemente los
registros (llaves) sobre los elementos del conjunto de direcciones,
manera adecuada. Casi siempre I es escogido como un número primo mayor que el
número máximo de registros en el archivo.
Cuando la celda de memoria con dirección q�p� ya está ocupada en el
se intenta almacenar p en ella, se dice que ocurre una colisión. En
general, se presenta una colisión para una función hashing si q�p�. Para resolver la colisión se recurre al siguiente método sim
política de resolución de colisiones. Esto consiste en que la primera
sigue a la celda ya ocupada será usada para almacenar el valor presente de
es el número de localidades de memorias disponibles
el entero no negativo que representa la llave, la función hashing
representa las direcciones de la celda de memoria en la cual p esta almacenada
q�p� p�mod I� ,
es simplemente el residuo cuando p es dividido entre I y toma valores I � 1�.
�, ��, ��� no es
. Es claro ver que �� B j,
no es una partición de
Cuando se almacena registros (datos) en un archivo de acceso directo en una
sta puede recuperar un registro específico sin leer primero otros
lo si la computadora puede identificar las localidades
a en las cuales se almacenan registros en la forma de enteros no negativos,
. Una transformación que mapea el conjuntos de llaves a un conjunto
función de hashing (función de
Aun cuando se usan varias funciones de mapeo de llaves, se
: Como las funciones hashing adecuadas deben distribuir uniformemente los
tos del conjunto de direcciones, I se elige de
es escogido como un número primo mayor que el
ya está ocupada en el
en ella, se dice que ocurre una colisión. En � �� q�p�� pero
. Para resolver la colisión se recurre al siguiente método simple llamado
celda vacía que
sigue a la celda ya ocupada será usada para almacenar el valor presente de p.
es el número de localidades de memorias disponibles y p es
función hashing q �p� que
esta almacenada
y toma valores
Ejemplo 1.13. Para la función datos: 714, 631, 26Se insertarían en el orden dado en celdas inicialmente vacías.
Solución. El siguiente cuadro representa el orden de las celdas inicialmente vacías 0 1 2 3
Datos - - - -
Dado que I 17, entonces q�714� q�631� q�26� q�373� q�775� q�906� q�509� q�2032� q�42� q�4� q�136� q�1028�
Los datos quedarían distribuidos como se indica a continuación
0
Datos 714
orden 1
9
Datos 26
orden 3
1.6 Relaciones n-arias.
Definición 1.8. Sean �conjuntos es subconjunto de llaman dominios de la relación y n es el grado de la relación.
9
Para la función q�e� e�Ruv17�, demuestre cómo los siguientes
26, 373, 775, 906, 509, 2032, 42, 4,136 y 1028Se insertarían en el orden dado en celdas inicialmente vacías.
El siguiente cuadro representa el orden de las celdas inicialmente vacías
4 5 6 7 8 9 10 11 12 13
- - - - - - - - - -
, entonces q�e� � 0,1,2, … ,16�. Luego para los datos
714�mod17� 0 631�mod17� 2 26�mod17� 9 373�mod17� 16 775�mod17� 10 906�mod17� 5 509�mod17� 16 2032�mod17� 9 42�mod17� 8 4�mod17� 4 136�mod17� 0 1028�mod17� 8
Los datos quedarían distribuidos como se indica a continuación
1 2 3 4 5 6 7 8
509 631 136 4 906 - - 42
7 2 11 10 6 9
10 11 12 13 14 15 16
775 2032 1028 - - - 373
5 8 12 4
arias. Base de datos relacionales
��, ��, h , �P conjuntos. Una relación n-aria en estos conjuntos es subconjunto de �� � �� � h � �P. Los conjuntos ��llaman dominios de la relación y n es el grado de la relación.
, demuestre cómo los siguientes
1028
El siguiente cuadro representa el orden de las celdas inicialmente vacías
14 15 16
- - -
. Luego para los datos dados se tiene
42
16
373
aria en estos �, ��, h , �P se
Ejemplo 1.14 Sea � ��, �, �� en las que �1,2,4� � � pero �4,2todos iguales al conjunto Ejemplo 1.15 Sea � la relación 5representan vuelos comerciales, donde vuelos, a es el punto de partidaejemplo, si Nadir Express Airlines tiene el vuelo 963 de Newark a Banger a las 15:00, entonces (Nadir, 963, Newark, Banger, 15:00) Aplicaciones. Base de
El modelo más popular en base de datos, es el sistema de base de datos relacionales. En este modelo, los datos se representan mediante una serie de relaciones. En apariencia, base de datos relacionales organiza los datos de manera que la vista externa sea una serie de relaciones o tablas. Esto no significa que los datos se almacenan como tablas; el almacenamiento físico de los datos es Independiente de la forma en que éstos están lógicamenrelación 3-aria.
No
CIS15
CIS17
CIS19
CIS51
Una relación en un sistema de base de siguientes:
� Nombre. Cada relación en una base de datos relacional debe tener un
nombre único entre otras relaciones.
� Atributos. Cada columna en una relación se llama atributo. Los atributos
son los encabezados de las columnas en la tabla. Cada atributo da
significado a los datos almacenados bajo él.
Cada columna en la tabla debe tener un nombre que sea único en el
ámbito de la rel
conoce como el grado de la relación.
� Tuplas (Registros).
tupla define una colección de valores de atributos. El número total de filas
en una relación s
cardinalidad de una relación cambia cuando se añaden o eliminan tuplas.
Esto vuelve dinámica a la base de datos.
10
la relación en J � J � h � J que consta de las ternas
en las que �, �, � son enteros positivos con � w �� 2,1� > �. El grado de esta relación es 3 y sus dominios son
todos iguales al conjunto J.
la relación 5-aria que consta de las 5-tuplas �representan vuelos comerciales, donde x es la línea aérea, I es el número
es el punto de partida, v es el destino y M es la hora de salida. Por
ejemplo, si Nadir Express Airlines tiene el vuelo 963 de Newark a Banger a las
15:00, entonces (Nadir, 963, Newark, Banger, 15:00) � �.
Base de datos relacionales
El modelo más popular en base de datos, es el sistema de base de datos
relacionales. En este modelo, los datos se representan mediante una serie de
. En apariencia, una relación es una tabla bidimensional. El sistema de
relacionales organiza los datos de manera que la vista externa sea
una serie de relaciones o tablas. Esto no significa que los datos se almacenan
como tablas; el almacenamiento físico de los datos es Independiente de la forma
en que éstos están lógicamente organizados. La figura muestra un ejemplo de una
Nombre del curso Créditos
Introducción a la Informática 5
Análisis Matemático II 5
Linux 4
Conectividad en red 5
en un sistema de base de datos relacionales tiene las características
Cada relación en una base de datos relacional debe tener un
nombre único entre otras relaciones.
Cada columna en una relación se llama atributo. Los atributos
son los encabezados de las columnas en la tabla. Cada atributo da
significado a los datos almacenados bajo él.
Cada columna en la tabla debe tener un nombre que sea único en el
ámbito de la relaciones. El número de atributos para una relación se
conoce como el grado de la relación.
Tuplas (Registros). Cada fila en una relación se conoce como
tupla define una colección de valores de atributos. El número total de filas
en una relación se llama cardinalidad de la relación. Observe que la
cardinalidad de una relación cambia cuando se añaden o eliminan tuplas.
Esto vuelve dinámica a la base de datos.
que consta de las ternas � w �. Entonces
. El grado de esta relación es 3 y sus dominios son
�x, I, a, v, M� que
es el número de
es la hora de salida. Por
ejemplo, si Nadir Express Airlines tiene el vuelo 963 de Newark a Banger a las
El modelo más popular en base de datos, es el sistema de base de datos
relacionales. En este modelo, los datos se representan mediante una serie de
es una tabla bidimensional. El sistema de
relacionales organiza los datos de manera que la vista externa sea
una serie de relaciones o tablas. Esto no significa que los datos se almacenan
como tablas; el almacenamiento físico de los datos es Independiente de la forma
te organizados. La figura muestra un ejemplo de una
datos relacionales tiene las características
Cada relación en una base de datos relacional debe tener un
Cada columna en una relación se llama atributo. Los atributos
son los encabezados de las columnas en la tabla. Cada atributo da
Cada columna en la tabla debe tener un nombre que sea único en el
aciones. El número de atributos para una relación se
Cada fila en una relación se conoce como tupla. Una
tupla define una colección de valores de atributos. El número total de filas
e llama cardinalidad de la relación. Observe que la
cardinalidad de una relación cambia cuando se añaden o eliminan tuplas.
Operaciones con relaciones
Operaciones unarias
1. Inserción. Se aplica a una sola relación. La operación inserta una nueva tupla en la relación. CURSOS
No Nombre del curso
CIS15 Introducción a la Informática
CIS17 Análisis Matemático II
CIS19 Linux
CIS51 Conectividad en red
2. Eliminación. La operación elimina una tupla definido por un criterio de la
relación. CURSOS
No Nombre del curso
CIS15 Introducción a la Informática
CIS17 Análisis Matemático II
CIS19 Linux
CIS51 Conectividad en red
CIS52 Matemática Discreta
3. Actualización. La operación cambia el valor de algunos atributos de una tupla.
No Nombre del curso
CIS15 Introducción a la Informática
CIS17 Análisis Matemático II
CIS19 Linux
CIS51 Conectividad en red
CIS52 Matemática Discreta
4. Selección. Se aplica a una sola relación y crea otra relación. Las tuplas (filas) de la relación resultante son un subconjunto de las tuplas de la relación original. Esta operación utiliza algunos criterios para seleccionar algunas de las tuplas de la relación original. El número de atributos (columnas) en esta operación
permanece igual.
Ejemplo. Seleccionar sólo los cursos de 5 créditos
11
Operaciones con relaciones
Se aplica a una sola relación. La operación inserta una nueva tupla en
Nombre del curso Créditos
Introducción a la Informática 5
Análisis Matemático II 5
4
Conectividad en red 5
La operación elimina una tupla definido por un criterio de la
Nombre del curso Créditos
5
Análisis Matemático II 5
4
Conectividad en red 5
Matemática Discreta 6
La operación cambia el valor de algunos atributos de una tupla.
Nombre del curso Créditos
5
Matemático II 5
4
Conectividad en red 5
Matemática Discreta 6
Se aplica a una sola relación y crea otra relación. Las tuplas (filas) de
la relación resultante son un subconjunto de las tuplas de la relación original.
Esta operación utiliza algunos criterios para seleccionar algunas de las tuplas de
nal. El número de atributos (columnas) en esta operación
Ejemplo. Seleccionar sólo los cursos de 5 créditos
No Nombre del curso
CIS15 Introducción a la Informática
CIS17 Análisis Matemático II
CIS19 Linux
CIS51 Conectividad en red
CIS53 Matemática Discreta
No Nombre del curso
CIS15 Introducción
a la Informática
CIS17 Análisis Matemático II
CIS51 Conectividad en red
CIS52 Matemática Discreta
No Nombre del curso
CIS15 Introducción
a la Informática
CIS17 Análisis Matemático II
CIS19 Linux
CIS51 Conectividad en red
CIS52 Matemática Discreta
Se aplica a una sola relación. La operación inserta una nueva tupla en
La operación elimina una tupla definido por un criterio de la
La operación cambia el valor de algunos atributos de una tupla.
Se aplica a una sola relación y crea otra relación. Las tuplas (filas) de
la relación resultante son un subconjunto de las tuplas de la relación original.
Esta operación utiliza algunos criterios para seleccionar algunas de las tuplas de
nal. El número de atributos (columnas) en esta operación
Nombre del curso Créditos
Introducción a la Informática 5
Análisis Matemático II 5
4
Conectividad en red 5
Matemática Discreta 6
Nombre del curso Créditos
a la Informática
5
Análisis Matemático II 5
Conectividad en red 5
Matemática Discreta 6
Nombre del curso Créditos
a la Informática
5
Análisis Matemático II 5
4
Conectividad en red 6
Discreta 6
No Nombre del curso
CIS15 Introducción a la Informática
CIS17 Análisis Matemático II
CIS19 Linux
CIS51 Conectividad en red
CIS52 Matemática Discreta
5. Proyección. Se aplica a una sola relación y crea otra relación. Los atributos
(columnas) en la relación resultante son un subconjunto de los atributos de la relación original. La operación de proyección crea una relación en la cual cada tupla tiene menos atributos. Esiendo el mismo.
No Nombre del curso
CIS15 Introducción a la Informática
CIS17 Análisis Matemático II
CIS19 Linux
CIS51 Conectividad en red
CIS52 Matemática Discreta
Operaciones binarias
6. Juntura. Toma dos relaciones y las combina con base en atributos comunes. Esta operación es muy compleja y tiene muchas variantes. En lamostradas aparece un ejemplo muy simple en el cual la relación de CURSOS se combina con la relación de IMPARTIDOS POR para crear una relación que muestra toda la información sobre los cursos, incluyendo los nombres de los profesores que los imparten. En este caso, curso (N0) CURSOS
No Nombre del curso
CIS15 Introducción a la Informática
CIS17 Análisis Matemático II
CIS19 Linux
CIS51 Conectividad en red
CIS52 Matemática Discreta
12
Nombre del curso Créditos
5
Análisis Matemático II 5
4
Conectividad en red 5
Matemática Discreta 6
Se aplica a una sola relación y crea otra relación. Los atributos (columnas) en la relación resultante son un subconjunto de los atributos de la relación original. La operación de proyección crea una relación en la cual cada tupla tiene menos atributos. El número de tuplas (filas) en esta operación sigue
Nombre del curso Créditos
a la Informática
5
Análisis Matemático II 5
4
Conectividad en red 5
Matemática Discreta 6
Operaciones binarias
Toma dos relaciones y las combina con base en atributos comunes.
Esta operación es muy compleja y tiene muchas variantes. En la
aparece un ejemplo muy simple en el cual la relación de CURSOS se
combina con la relación de IMPARTIDOS POR para crear una relación que
muestra toda la información sobre los cursos, incluyendo los nombres de los
profesores que los imparten. En este caso, el atributo común es el número de
IMPARTIDOS POR
Nombre del curso Créditos
5
Matemático II 5
4
Conectividad en red 5
Matemática Discreta 6
No Nombre del curso
CIS15 Introducción
a la Informática
CIS17 Análisis Matemático II
CIS51 Conectividad en red
No Créditos
CIS15
CIS17
CIS19
CIS51
CIS52
No Nombre del curso Créditos Profesor
CIS15 Introducción
a la Informática
5 Gonzales
CIS17 Análisis Matemático II 5 Campos
CIS19 Linux 4 Salas
CIS51 Conectividad en red 5 Contreras
CIS52 Matemática Discreta 6 Onofre
JOIN
Se aplica a una sola relación y crea otra relación. Los atributos
(columnas) en la relación resultante son un subconjunto de los atributos de la
relación original. La operación de proyección crea una relación en la cual cada
l número de tuplas (filas) en esta operación sigue
Toma dos relaciones y las combina con base en atributos comunes.
Esta operación es muy compleja y tiene muchas variantes. En las tablas
aparece un ejemplo muy simple en el cual la relación de CURSOS se
combina con la relación de IMPARTIDOS POR para crear una relación que
muestra toda la información sobre los cursos, incluyendo los nombres de los
el atributo común es el número de
IMPARTIDOS POR
Nombre del curso Créditos
a la Informática
5
Análisis Matemático II 5
Conectividad en red 5
Créditos
5
5
4
5
6
No Profesor
CIS15 Gonzales
CIS17 Campos
CIS19 Salas
CIS51 Contreras
CIS52 Onofre
Profesor
Gonzales
Campos
Salas
Contreras
Onofre
7. Unión. Toma dos relaciones y crea una nueva relación. Sin embargo, hay una restricción en las dos relaciones; éstas deben tener los mismos atributos. La operación de unión, según se define en la teoría de conjuntos, crea una nueva
relación en la cual cada tupla está ya sea en la primera relación, en la segunda o
en ambos
LISTA DE TURNOS DE CIS15
Codigo Nombre Apellido
11340J John Breman
11243K George Caballero
11346B Any Carranza
11248L Iván Fernández
LISTA DE TURNOS DE CIS52
Codigo Nombre
11245K Ricardo
11340J John
11243K George
8. Intersección. Toma dos relaciones y crea una nueva relación. Al igual que la
operación unión, las dos relaciones deben tener los mismos
operación de intersección, según se define en la teoría de conjuntos, crea una
nueva relación en la cual cada tupla es un miembro de ambas relaciones.
La operación intersección a
LISTA DE TURNOS DE CIS52
9. Diferencia. Se aplica a dos relaciones con los mismos atributos. Las tuplas en la
relación resultante son aquellas que están en la primera relación pero no en la
segunda.
Aplicando la operación diferencia a las relaciones 3
CIS15 y LISTA DE TURNOS DE CIS52
SQL
El Lenguaje de Consultas Estructurado
Instituto Nacional Norteamericano (ANSI) y la Organización Internacional para la
Estandarización (ISO) para usar en las bases de datos relacionales. Es un lenguaje
declarativo (no de procedimientos), lo cual significa
que quieren sin tener que escribir un procedimiento paso a paso. El lenguaje SQL
13
Toma dos relaciones y crea una nueva relación. Sin embargo, hay una
en las dos relaciones; éstas deben tener los mismos atributos. La
operación de unión, según se define en la teoría de conjuntos, crea una nueva
relación en la cual cada tupla está ya sea en la primera relación, en la segunda o
IS15
Apellido
Breman
Caballero
Carranza
Fernández
LISTA DE TURNOS DE CIS52
Apellido
Pérez
Breman
Caballero
Toma dos relaciones y crea una nueva relación. Al igual que la
operación unión, las dos relaciones deben tener los mismos
operación de intersección, según se define en la teoría de conjuntos, crea una
nueva relación en la cual cada tupla es un miembro de ambas relaciones.
La operación intersección a las relaciones 3-arias: LISTA DE TURNOS DE CIS15
NOS DE CIS52, obtiene la siguiente tabla
aplica a dos relaciones con los mismos atributos. Las tuplas en la
relación resultante son aquellas que están en la primera relación pero no en la
Aplicando la operación diferencia a las relaciones 3-arias: LISTA DE TURNOS DE
TURNOS DE CIS52, obtenemos
Codigo Nombre Apellido
11346B Any Carranza
11248L Iván Fernández
Lenguaje de Consultas Estructurado (SQL) es el lenguaje estandarizado por el
Instituto Nacional Norteamericano (ANSI) y la Organización Internacional para la
Estandarización (ISO) para usar en las bases de datos relacionales. Es un lenguaje
declarativo (no de procedimientos), lo cual significa que los usuarios declaran lo
que quieren sin tener que escribir un procedimiento paso a paso. El lenguaje SQL
Codigo Nombre
11340J John
11243K George
11346B Any
11248L Iván
11245K Ricardo
Codigo Nombre Apellido
11340J John Breman
11243K George Caballero
Toma dos relaciones y crea una nueva relación. Sin embargo, hay una
en las dos relaciones; éstas deben tener los mismos atributos. La
operación de unión, según se define en la teoría de conjuntos, crea una nueva
relación en la cual cada tupla está ya sea en la primera relación, en la segunda o
Toma dos relaciones y crea una nueva relación. Al igual que la
operación unión, las dos relaciones deben tener los mismos atributos. La
operación de intersección, según se define en la teoría de conjuntos, crea una
nueva relación en la cual cada tupla es un miembro de ambas relaciones.
LISTA DE TURNOS DE CIS15 y
aplica a dos relaciones con los mismos atributos. Las tuplas en la
relación resultante son aquellas que están en la primera relación pero no en la
LISTA DE TURNOS DE
) es el lenguaje estandarizado por el
Instituto Nacional Norteamericano (ANSI) y la Organización Internacional para la
Estandarización (ISO) para usar en las bases de datos relacionales. Es un lenguaje
que los usuarios declaran lo
que quieren sin tener que escribir un procedimiento paso a paso. El lenguaje SQL
Nombre Apellido
Breman
George Caballero
Carranza
Fernández
Ricardo Pérez
primero se implantó por Oracle Corporation en 1979; desde entonces se han
liberado nuevas versiones de SQL.
En esta sección se definen algunas ins
se relacionan con las operaciones definidas en la sección anterior. De ninguna
manera es un tutorial para el lenguaje SQL
Instrucciones.
1. Insert
2. Delete
3. Update
4. Select
*: significa que todos los atributos se eligen
5. Project
6. Join
Las instrucciones siguientes está relacionados con las operaciones que definimos
anteriormente al igual que los ejemplo mostrados.
insert into NOMBREvalues (. . . , . . . , . . .)
delet from NOMBREwhere criterios
update NOMBRE-set atributo1=valor1, where criterios
select * from NOMBRE-RELACIÓN
where criterios
select Lista - Atributos
from NOMBRE-RELACIÓN
select Lista - Atributos
from RELACIÓN 1, RELACIÓN 2
where criterios
14
primero se implantó por Oracle Corporation en 1979; desde entonces se han
liberado nuevas versiones de SQL.
En esta sección se definen algunas instrucciones comunes en el lenguaje SQL que
se relacionan con las operaciones definidas en la sección anterior. De ninguna
manera es un tutorial para el lenguaje SQL
Ejemplo
Ejemplo:
Ejemplo:
Ejemplo:
que todos los atributos se eligen
Ejemplo:
Ejemplo:
Las instrucciones siguientes está relacionados con las operaciones que definimos
anteriormente al igual que los ejemplo mostrados.
NOMBRE-RELACIÓN . .)
insert into CURSOS values (“CIS52”, “Matemática Discreta”,6)
NOMBRE-RELACIÓN
-RELACIÓN 1=valor1, atributo1=valor1, . . . .
RELACIÓN
Atributos RELACIÓN
Atributos 1, RELACIÓN 2
delet from CURSOS where No=”CIS19”
update CURSOSset crédito = 6 where No=”CIS51”
select * from CURSOS
where créditos=5
select No . créditos
from CURSOS
select No.Nombre del curso. Créditos. Profesor
from CURSOS . IMPARTIDOS POR
where CURSOS. No = IMPARTIDOS POR. No;
primero se implantó por Oracle Corporation en 1979; desde entonces se han
trucciones comunes en el lenguaje SQL que
se relacionan con las operaciones definidas en la sección anterior. De ninguna
Las instrucciones siguientes está relacionados con las operaciones que definimos
values (“CIS52”, “Matemática Discreta”,6)
CURSOS
No=”CIS51”
créditos=5
No . créditos
curso. Créditos. Profesor CURSOS . IMPARTIDOS POR
CURSOS. No = IMPARTIDOS POR. No;
7. Union
8. Intersection
9. Difference
Observación. El lenguaje SQL le permite
para extraer información más compleja desde una base de datos.
select * from RELACIÓN 1
union
select *
from RELACIÓN 2
select * from RELACIÓN 1
intersection
select *
from RELACIÓN 2
select * from RELACIÓN 1
minus
select *
from RELACIÓN 2
15
Ejemplo:
Ejemplo:
Ejemplo:
El lenguaje SQL le permite combinar las instrucciones anteriores
para extraer información más compleja desde una base de datos.
select * from LISTA DE TURNOS DE CIS15
union
select *
from LISTA DE TURNOS DE CIS52
select * from LISTA DE TURNOS DE CIS15
intersection
select *
from LISTA DE TURNOS DE CIS52
select * from LISTA DE TURNOS DE CIS15
minus
select *
from LISTA DE TURNOS DE CIS52
combinar las instrucciones anteriores
para extraer información más compleja desde una base de datos.
CIS15
IS52
Recommended