Sei sulla pagina 1di 7

ALGEBRA RELACIONAL

Conjunto de operaciones para manipular las tuplas de las relaciones o tablas. El resultado de cada
operacin es una nueva relacin que podemos manipular posteriormente.
OPERACIONES
Seleccionar (s)
Proyectar (p)
Operaciones de Teora de Conjuntos: Unin (), Interseccin (), Diferencia (-), Producto
Cartesiano (X).
Reunin (o)
SELECCIONAR (o)
Por medio de esta operacin se posibilita la seleccin de un subconjunto de tuplas de una relacin
que corresponden a una condicin (columna OPERADOR valor) determinada. El grado (total de
columnas de la Relacin), se conserva.
Formato de Uso: o (condicin) (RELACION)
Esta operacin es conmutativa, es decir:
o (condicin1) ( o (condicin2) (R) ) = o (condicin2) ( o (condicin1) (R) )
EJEMPLOS:
PERSONA
Cedula Nombre Primer_Apellido Segundo_Apellido Sexo Direccin Telefono Salario
71134534 Juan Mesa Uribe M Cra 25
22-1
2567532 1,600,000
23423445 Ana
Mara
Betancur Bermudez F Cra 45
11-13
3433444 1,300,000
12453535 Gloria Betancur Garces F Tr. 12 43-
5
2756533 1,700,000
75556743 Pedro Ochoa Pelaez M Cll.6ta 14-
45
2686885 1,200,000
43533322 Patricia Angel Guzmn F Cll. 45 23-
1
2674563 1,350,000
78900456 Carlos Betancur Agudelo M Cir. 5 12-
5
4445775 1,500,000
La seleccin, permite extraer todas las filas (tuplas) que cumple una condicin determinada. Esta
condicin permite la utilizacin de los operadores de comparacin: =,>,<,>=,=, adems de los
conectores lgicos "y" - "o":
a. o cedula = 71134534 (PERSONA)

Resultado:
Cedula Nombre Primer_Apellido Segundo_Apellido Sexo Direccin Telefono Salario
71134534 Juan Mesa Uribe M Cra 25
22-1
2567532 1,600,000
b. o sexo ='F' (PERSONA)
Resultado:
Cedula Nombre Primer_Apellido Segundo_Apellido Sexo Direccin Telefono Salario
23423445 Ana
Mara
Betancur Bermudez F Cra 45
11-13
3433444 1,300,000
12453535 Gloria Betancur Garces F Tr. 12 43-
5
2756533 1,700,000
c. o (primer_apellido ='Betancur') y (sexo='F') (PERSONA)
Resultado:
Cedula Nombre Primer_Apellido Segundo_Apellido Sexo Direccin Telefono Salario
23423445 Ana
Mara
Betancur Bermudez F Cra 45
11-13
3433444 1,300,000
12453535 Gloria Betancur Garces F Tr. 12 43-
5
2756533 1,700,000
d. o (sexo = 'M'') o (Salario >=1,350,000) (PERSONA)
Resultado:
Cedula Nombre Primer_Apellido Segundo_Apellido Sexo Direccin Telefono Salario
71134534 Juan Mesa Uribe M Cra 25
22-1
2567532 1,600,000
12453535 Gloria Betancur Garces F Tr. 12 43-
5
2756533 1,700,000
75556743 Pedro Ochoa Pelaez M Cll.6ta 14-
45
2686885 1,200,000
43533322 Patricia Angel Guzmn F Cll. 45 23-
1
2674563 1,350,000
78900456 Carlos Betancur Agudelo M Cir. 5 12-
5
4445775 1,500,000
PROYECTAR (t)
Esta operacin permite seleccionar algunas columnas de una relacin.
Formato de Uso: t <lista de Atributos> (RELACION)
EJEMPLOS:
Se construyen con base en la Relacin anterior: PERSONA.
a. t cedula, nombre, primer_apellido, segundo_apellido (PERSONA)
Resultado
Cedula Nombre Primer_Apellido Segundo_Apellido
71134534 Juan Mesa Uribe
23423445 Ana Mara Betancur Bermudez
12453535 Gloria Betancur Garces
75556743 Pedro Ochoa Pelaez
43533322 Patricia Angel Guzmn
78900456 Carlos Betancur Agudelo
b. t cedula, salario (PERSONA)

Resultado:
Cedula Salario
71134534 1,600,000
23423445 1,300,000
12453535 1,700,000
75556743 1,200,000
43533322 1,350,000
78900456 1,500,000
La operacin SELECCIN combinada con la operacin PROYECCIN, podemos tener:

c. t cedula, nombre, salario (o (sexo = 'M'') o (Salario
>=1,350,000) (PERSONA) )
Resultado:
Cedula Nombre Salario
71134534 Juan 1,600,000
12453535 Gloria 1,700,000
75556743 Pedro 1,200,000
43533322 Patricia 1,350,000
78900456 Carlos 1,500,000
EL RESULTADO DE LAS OPERACIONES PUEDEN SER LLEVADOS A RELACIONES
TEMPORALES DE LA SIGUIENTE FORMA:
REL_TEMP t cedula, nombre, salario (o (sexo = 'M'') o (Salario
>=1,350,000) (PERSONA) )
Resultado:
REL_TEMP Cedula Nombre Salario
71134534 Juan 1,600,000
12453535 Gloria 1,700,000
75556743 Pedro 1,200,000
43533322 Patricia 1,350,000
78900456 Carlos 1,500,000
UNION ( )
Construye una relacin con todas las tuplas que aparezcan en cualquiera de las dos relaciones
especificadas. Para usar este operador es necesario que las dos relaciones especificadas tengan los
mismos atributos definidos sobre los mismos dominios.
Ejemplo
Tabla: Medicamentos
Medicamentos
Cdigo Nombre Valor
01M00123 Acetaminofn 100
01M00124 Ranitidina 500
Tabla: Material_Qco
Material_Qco
Cdigo Nombre Valor
02Q00456 Aguja 100
02Q00567 Vendas 3200
t codigo, nombre, valor (Medicamentos) t codigo, nombre, valor
(Material_Qco)
Resultado consulta
Cdigo Nombre Valor
01M00123 Acetaminofn 100
01M00124 Ranitidina 500
02Q00456 Aguja 100
02Q00567 Vendas 3200

DIFERENCIA (-)
Construye una relacin con las tuplas de la primera relacin que no aparecen en la segunda. Para
utilizar este operador es necesario que las dos relaciones especificadas tengan los mismos atributos
definidos sobre los mismos dominios.
Ejemplo
Tabla: Medicamentos
Medicamentos
Cdigo Nombre Valor
01M00123 Acetaminofn 100
01M00124 Ranitidina 500
01M00234 Penicilina 2500

Tabla: Material_Qco
Material_Qco
Cdigo Nombre Valor
02Q00456 Aguja 100
02Q00567 Vendas 3200
01M00124 Ranitidina 500
t codigo, nombre, valor (Medicamentos) - t codigo, nombre, valor
(Material_Qco)
Resultado consulta
Cdigo Nombre Valor
01M00123 Acetaminofn 100
01M00234 Penicilina 2500
INTERSECCIN ()
Construye una relacin con aquellas tuplas que aparezcan en las dos relaciones especificadas. Para
utilizar este operador es necesario que las dos relaciones especificadas tengan los mismos atributos
definidos sobre los mismos dominios. La interseccin se puede definir en funcin de la unin y la
diferencia
Ejemplo
Tabla: Medicamentos
Medicamentos
Cdigo Nombre Valor
01M00123 Acetaminofn 100
01M00124 Ranitidina 500
01M00234 Penicilina 2500

Tabla: Material_Qco
Material_Qco
Cdigo Nombre Valor
02Q00456 Aguja 100
02Q00567 Vendas 3200
01M00124 Ranitidina 500
t codigo, nombre, valor (Medicamentos) t codigo, nombre, valor
(Material_Qco)
Resultado consulta
Cdigo Nombre Valor
01M00124 Ranitidina 500

Potrebbero piacerti anche