21/05/13 Curso Bases de Datos 1
CONCEPTOS Y DISEÑOS DE
BASES DE DATOS
Gustavo Cáceres Castellanos
Universidad Pedagógica y Tecnológica de Colombia
gustavo.caceres@uptc.edu.co
Especialización en Bases de Datos
ÁLGEBRA RELACIONAL
21/05/13 Curso Bases de Datos 2
Álgebra Relacional
 Permite operar con el Modelo Relacional
 Conjunto de operadores que toman relaciones
como sus operandos y regresan una relación
como resultado  El álgebra es cerrada
 Es un formalismo que permite solicitar
información a las Bases de Datos
 Es un lenguaje puro (en general no se
implementa directamente)
 Propuesta por Codd
 Se usa para la traducción de una consulta SQL
y para optimización de consultas
21/05/13 Curso Bases de Datos 3
Álgebra Relacional
 8 operadores iniciales clasificados en
2 grupos:
 Tradicionales de la teoría de conjuntos:
Unión, Intersección, Diferencia y
Producto Cartesiano
 Especiales: Restricción (o Selección),
Proyección, Reunión (join) y División
 Operadores adicionales: Renombrado,
Agrupamiento
21/05/13 Curso Concepto y Diseño de
Bases de Datos
4
Álgebra Relacional
Código Nombre Edad
1 Jorge Campos 33
2 Enrique Muñoz 25
3 Esteban Paz 21
Código Nombre Edad
2 Enrique Muñoz 25
8 Jorge Arias 30
10 Juan Martínez 19
ADMINISTRADOR
PRODUCTOR
Sean las relaciones:
¡¡REPASO!!
¿Cuál es el esquema de
la relación
ADMINISTRADOR?
(Código,Nombre,Edad)
21/05/13 Curso Bases de Datos 5
Restricción o Selección (σ)
 El argumento es una relación y
una condición
 Produce una relación R1 que
contiene todas las tuplas de R
que cumplen una condición
específica
 La condición se construye
mediante operadores de
comparación (=,<,> etc.) y
booleanos (AND, OR etc.)
 El resultado es una nueva
relación cuyo esquema es
idéntico al esquema de R
σcondición(R)
21/05/13 Curso Bases de Datos 6
Restricción o Selección (σ)
σEdad >= 25(Administrador):
σCódigo < 5 (Productor):
Código Nombre Edad
1 Jorge Campos 33
2 Enrique Muñoz 25
3 Esteban Paz 21
Código Nombre Edad
1 Jorge Campos 33
2 Enrique Muñoz 25
Código Nombre Edad
2 Enrique Muñoz 25
Código Nombre Edad
2 Enrique Muñoz 25
8 Jorge Arias 30
10 Juan Martínez 19
21/05/13 Curso Bases de Datos 7
Proyección (π)
 Toma como argumento
una relación R y una lista
de atributos
 Se utiliza para extraer
atributos (columnas) de
una relación R
 El resultado es una nueva
relación R1 cuyo esquema
corresponde a la lista de
atributos proyectados
 En R1 se eliminan las
tuplas duplicadas
 Se puede extraer más de
una columna a la vez
π Lista Atributos (R)
21/05/13 Curso Bases de Datos 8
Proyección (π)
πCódigo,Edad(Administrador)
Código Edad
1 33
2 25
3 21
Código Nombre
2 Enrique Muñoz
8 Jorge Arias
10 Juan Martínez
πCódigo,Nombre(Productor)
Código Nombre Edad
1 Jorge Campos 33
2 Enrique Muñoz 25
3 Esteban Paz 21
21/05/13 Curso Bases de Datos 9
Proyección (π)
Código Edad
1 30
2 25
3 30
Suponga una relación W así:
πEdad(W)
W
Edad
30
25
¡¡ se eliminan tuplastuplas repetidas !!
El resultado será:
21/05/13 Curso Bases de Datos 10
Producto Cartesiano: R1 XX R2
 Toma como argumentos dos relaciones R1 y R2
 Da como resultado una relación R3 cuyo esquema consta
tanto de los atributos de R1 como de los atributos de R2
 Los esquemas de R1 y R2 deben ser disjuntos, es decir
los esquemas de R1 y R2 no pueden tener nombres de
atributos en común ¿por qué?
 Se debe usar un alias (mediante el operador ρ) si los
esquemas no son disjuntos
 R3 contiene todas las tuplas resultantes de la
concatenación de cada tupla de R1con cada una de las
tuplas de R2
Renombrado de atributos
RENOMBRADO DE ATRIBUTOS
21/05/13 Curso Bases de Datos 11
Forma I:
Administrador XX [ρCódigoCod,NombreNom,EdadEdad1(Productor)]
Forma II:
Productor1(Cod,Nom,Edad1) ‹-- Productor
21/05/13 Curso Bases de Datos 12
Ejemplo
Código Nombre Edad Cod Nom Edad1
1 Jorge Campos 33 2 Enrique Muñoz 25
1 Jorge Campos 33 8 Jorge Arias 30
1 Jorge Campos 33 10 Juan Martínez 19
2 Enrique Muñoz 25 2 Enrique Muñoz 25
2 Enrique Muñoz 25 8 Jorge Arias 30
2 Enrique Muñoz 25 10 Juan Martínez 19
3 Esteban Paz 21 2 Enrique Muñoz 25
3 Esteban Paz 21 8 Jorge Arias 30
3 Esteban Paz 21 10 Juan Martínez 19
El renombrado ρρ de la relationde la relation
RR(A,B,C,D) en(A,B,C,D) en RR(A,K,L,D) se denota(A,K,L,D) se denota
ρρ BBK,CK,CLL (R)
¡¡ El renombrado es puramente sintáctico !!
Administrador XX [ρCódigoCod,NombreNom,EdadEdad1(Productor)]
21/05/13 Curso Bases de Datos 13
Unión: R1 ∪ R2
 Toma como argumentos
dos relaciones R1 y R2 con
esquemas idénticos
 Retorna una relación R3
con el mismo esquema de
R1 y R2 que contiene todas
la tuplas de R1 y todas las
de R2, eliminando tuplas
repetidas
R1
R2
21/05/13 Curso Bases de Datos 14
Ejemplo:
 Administrador ∪ Productor:
Código Nombre Edad
1 Jorge Campos 33
2 Enrique Muñoz 25
3 Esteban Paz 21
8 Jorge Arias 30
10 Juan Martínez 19
21/05/13 Curso Bases de Datos 15
Intersección: R1 ∩ R2
 Toma como argumentos
dos relaciones R1 y R2
con esquemas idénticos
 Retorna una relación R3
con el mismo esquema
de R1 y R2 que contiene
todas las tuplas que
aparecen tanto en R1
como en R2
R1
R2
21/05/13 Curso Bases de Datos 16
Ejemplo
 Administrador ∩ Productor
Código Nombre Edad
2 Enrique Muñoz 25
21/05/13 Curso Bases de Datos 17
Diferencia: R1 − R2
 Toma como argumento
dos relaciones R1 y R2
con esquemas idénticos
 Retorna una relación R3
con el mismo esquema
de R1 y R2 que
contiene todas las
tuplas que aparecen en
R1 pero no en R2
R1
R2
21/05/13 Curso Bases de Datos 18
Ejemplo
 Administrador − Productor:
 Productor − Administrador:
Código Nombre Edad
1 Jorge Campos 33
3 Esteban Paz 21
Código Nombre Edad
8 Jorge Arias 30
10 Juan Martínez 19
21/05/13 Curso Bases de Datos 19
 La unión, intersección y producto
cartesiano son conmutativas y
asociativas
 La diferencia no es conmutativa ni
asociativa
 La intersección no es primitiva ya que
puede ser expresada mediante la
diferencia
Propiedades
21/05/13 Curso Bases de Datos 20
Reunión (JOIN)
 NATURAL JOIN: R1 * R2
Si R1(A,B) y R2(B,C) el resultado de R1 *R2
es una relación R3 con esquema R3(A,B,C)
donde cada tupla de R1 se concatena con cada
tupla de R2 SIEMPRE Y CUANDO tengan el
mismo valor del atributo en común (B).
El atributo B puede ser compuesto.
21/05/13 Curso Bases de Datos 21
Ejemplo
Código Nombre Edad Depto
1 Jorge Campos 33 1
2 Enrique Muñoz 25 1
3 Esteban Paz 21 1
8 Jorge Arias 30 2
10 Juan Martínez 19 2
12 Anselmo Rodas 28 6
Depto Descripción
1 Administración
2 Producción
3 Ventas
4 Finanzas
Empleado
Departamento
Atributo de
Join
NotaNota: En este ejemplo, el campo
Depto en Empleado NO ES CF
con respecto a la tabla Departamento
21/05/13 Curso Bases de Datos 22
Ejemplo
Empleado * Departamento
Código Nombre Edad Depto Descripción
1 Jorge Campos 33 1 Administración
2 Enrique Muñoz 25 1 Administración
3 Esteban Paz 21 1 Administración
8 Jorge Arias 30 2 Producción
10 Juan Martínez 19 2 Producción
21/05/13 Curso Bases de Datos 23
SEMI JOIN ( ⊳)
 Idéntico al NATURAL JOIN pero la
relación resultante tiene el esquema
de la relación izquierda ¿Utilidad?
21/05/13 Curso Bases de Datos 24
THETA JOIN (R1 ⋈ Condición R2)
 El operador de comparación usado en la
condición NO es el “==“ sino alguno de
los siguientes: “>>“, “<<“, “>=>=“, “<=<=“,
“≠≠“
 Es equivalente a: σCondición (R1 X R2)
21/05/13 Curso Bases de Datos 25
Ejemplo
Empleado ⋈ Depto > Dep [ρ DeptoDep (Departamento)]
Código Nombre Edad Depto Dep Desc
8 Jorge Arias 30 2 1 Administración
10 Juan Martínez 19 2 1 Administración
12 Anselmo Rodas 28 6 1 Administración
12 Anselmo Rodas 28 6 2 Producción
12 Anselmo Rodas 28 6 3 Ventas
12 Anselmo Rodas 28 6 4 Finanzas
21/05/13 Curso Bases de Datos 26
División: R1 ÷ R2
Def 1: Sean las relaciones R1(A,B) y
R2(B). El resultado de R1 ÷ R2es una
relación R3 cuyo esquema esta compuesto
por el atributo A, donde para todo valor
de B en R2 existe una pareja en R1de A
con ese valor.
Def 2:
R ÷ S = {t | t ∈ ΠΠK (R) y {t} x s ⊆⊆ r} con
K= esquema de R – esquema de S
Tuplas de S
Tuplas de R
21/05/13 Curso Bases de Datos 27
Ejemplo
Empleado
Código Nombre Edad Depto
1 Jorge Campos 33 1
2 Enrique Muñoz 25 1
2 Enrique Muñoz 25 2
3 Esteban Paz 21 1
8 Jorge Arias 30 2
10 Juan Martínez 19 2
Depto
1
2
Departamento
Empleado ÷ (πDepto(Departamento))
En este ejemplo la relación empleado no está
normalizada, observe que la CP es (Código, Depto)
y Código  Nombre, Edad
Código Nombre Edad
2 Enrique Muñoz 25
21/05/13 Curso Bases de Datos 28
Ademas ..
Se permite también el siguiente operador:
Asignación: VbleRelacion Relación←
Otra forma de renombrar atributos y el
nombre de la relación
ρ NuevoNombreRelación(Atributos Renombrados) (π(Lista Atributos)(R))
21/05/13 Curso Bases de Datos 29
Agrupar con funciones
F : Agrupar con funciones Suma(), Promedio(), Max(), Min(),
Cuenta()
Código Nombre Edad Depto
1 Jorge Campos 33 1
2 Enrique Muñoz 25 1
3 Esteban Paz 21 1
8 Jorge Arias 30 2
10 Juan Martínez 19 2
12 Anselmo Rodas 28 6
¿Qué hace la siguiente consulta?
Depto F Cuenta(Código) AS conteo (Emp)
Renombrado
de la función de
Grupo
Emp
Atributos de Agrupamiento FFunciones de Grupo (R)
Ej. Sea:
SINTAXIS:
21/05/13 Curso Bases de Datos 30
Extender
Extend R ADD expresión AS nuevo_atributo
Código Nombre Sal Bono
1 Jorge Campos 33 1
2 Enrique Muñoz 25 1
3 Esteban Paz 21 1
8 Jorge Arias 30 2
10 Juan Martínez 19 2
12 Anselmo Rodas 28 6
Emp
Ej: Extend Emp ADD Sal*2 AS Saldobl
21/05/13 Curso Bases de Datos 31
Ejemplo
 Se genera una relación como la original
pero con un atributo saldobl adicional:
Código Nombre Sal Bono Saldobl
1 Jorge Campos 33 1 66
2 Enrique Muñoz 25 1 50
3 Esteban Paz 21 1 42
8 Jorge Arias 30 2 60
10 Juan Martínez 19 2 38
12 Anselmo Rodas 28 6 56
¿Qué hace la siguiente consulta?
Ej: Extend Emp ADD 1 AS num, ‘Hola’ AS mensaje

Algebra relacional i-bdi

  • 1.
    21/05/13 Curso Basesde Datos 1 CONCEPTOS Y DISEÑOS DE BASES DE DATOS Gustavo Cáceres Castellanos Universidad Pedagógica y Tecnológica de Colombia gustavo.caceres@uptc.edu.co Especialización en Bases de Datos ÁLGEBRA RELACIONAL
  • 2.
    21/05/13 Curso Basesde Datos 2 Álgebra Relacional  Permite operar con el Modelo Relacional  Conjunto de operadores que toman relaciones como sus operandos y regresan una relación como resultado  El álgebra es cerrada  Es un formalismo que permite solicitar información a las Bases de Datos  Es un lenguaje puro (en general no se implementa directamente)  Propuesta por Codd  Se usa para la traducción de una consulta SQL y para optimización de consultas
  • 3.
    21/05/13 Curso Basesde Datos 3 Álgebra Relacional  8 operadores iniciales clasificados en 2 grupos:  Tradicionales de la teoría de conjuntos: Unión, Intersección, Diferencia y Producto Cartesiano  Especiales: Restricción (o Selección), Proyección, Reunión (join) y División  Operadores adicionales: Renombrado, Agrupamiento
  • 4.
    21/05/13 Curso Conceptoy Diseño de Bases de Datos 4 Álgebra Relacional Código Nombre Edad 1 Jorge Campos 33 2 Enrique Muñoz 25 3 Esteban Paz 21 Código Nombre Edad 2 Enrique Muñoz 25 8 Jorge Arias 30 10 Juan Martínez 19 ADMINISTRADOR PRODUCTOR Sean las relaciones: ¡¡REPASO!! ¿Cuál es el esquema de la relación ADMINISTRADOR? (Código,Nombre,Edad)
  • 5.
    21/05/13 Curso Basesde Datos 5 Restricción o Selección (σ)  El argumento es una relación y una condición  Produce una relación R1 que contiene todas las tuplas de R que cumplen una condición específica  La condición se construye mediante operadores de comparación (=,<,> etc.) y booleanos (AND, OR etc.)  El resultado es una nueva relación cuyo esquema es idéntico al esquema de R σcondición(R)
  • 6.
    21/05/13 Curso Basesde Datos 6 Restricción o Selección (σ) σEdad >= 25(Administrador): σCódigo < 5 (Productor): Código Nombre Edad 1 Jorge Campos 33 2 Enrique Muñoz 25 3 Esteban Paz 21 Código Nombre Edad 1 Jorge Campos 33 2 Enrique Muñoz 25 Código Nombre Edad 2 Enrique Muñoz 25 Código Nombre Edad 2 Enrique Muñoz 25 8 Jorge Arias 30 10 Juan Martínez 19
  • 7.
    21/05/13 Curso Basesde Datos 7 Proyección (π)  Toma como argumento una relación R y una lista de atributos  Se utiliza para extraer atributos (columnas) de una relación R  El resultado es una nueva relación R1 cuyo esquema corresponde a la lista de atributos proyectados  En R1 se eliminan las tuplas duplicadas  Se puede extraer más de una columna a la vez π Lista Atributos (R)
  • 8.
    21/05/13 Curso Basesde Datos 8 Proyección (π) πCódigo,Edad(Administrador) Código Edad 1 33 2 25 3 21 Código Nombre 2 Enrique Muñoz 8 Jorge Arias 10 Juan Martínez πCódigo,Nombre(Productor) Código Nombre Edad 1 Jorge Campos 33 2 Enrique Muñoz 25 3 Esteban Paz 21
  • 9.
    21/05/13 Curso Basesde Datos 9 Proyección (π) Código Edad 1 30 2 25 3 30 Suponga una relación W así: πEdad(W) W Edad 30 25 ¡¡ se eliminan tuplastuplas repetidas !! El resultado será:
  • 10.
    21/05/13 Curso Basesde Datos 10 Producto Cartesiano: R1 XX R2  Toma como argumentos dos relaciones R1 y R2  Da como resultado una relación R3 cuyo esquema consta tanto de los atributos de R1 como de los atributos de R2  Los esquemas de R1 y R2 deben ser disjuntos, es decir los esquemas de R1 y R2 no pueden tener nombres de atributos en común ¿por qué?  Se debe usar un alias (mediante el operador ρ) si los esquemas no son disjuntos  R3 contiene todas las tuplas resultantes de la concatenación de cada tupla de R1con cada una de las tuplas de R2 Renombrado de atributos
  • 11.
    RENOMBRADO DE ATRIBUTOS 21/05/13Curso Bases de Datos 11 Forma I: Administrador XX [ρCódigoCod,NombreNom,EdadEdad1(Productor)] Forma II: Productor1(Cod,Nom,Edad1) ‹-- Productor
  • 12.
    21/05/13 Curso Basesde Datos 12 Ejemplo Código Nombre Edad Cod Nom Edad1 1 Jorge Campos 33 2 Enrique Muñoz 25 1 Jorge Campos 33 8 Jorge Arias 30 1 Jorge Campos 33 10 Juan Martínez 19 2 Enrique Muñoz 25 2 Enrique Muñoz 25 2 Enrique Muñoz 25 8 Jorge Arias 30 2 Enrique Muñoz 25 10 Juan Martínez 19 3 Esteban Paz 21 2 Enrique Muñoz 25 3 Esteban Paz 21 8 Jorge Arias 30 3 Esteban Paz 21 10 Juan Martínez 19 El renombrado ρρ de la relationde la relation RR(A,B,C,D) en(A,B,C,D) en RR(A,K,L,D) se denota(A,K,L,D) se denota ρρ BBK,CK,CLL (R) ¡¡ El renombrado es puramente sintáctico !! Administrador XX [ρCódigoCod,NombreNom,EdadEdad1(Productor)]
  • 13.
    21/05/13 Curso Basesde Datos 13 Unión: R1 ∪ R2  Toma como argumentos dos relaciones R1 y R2 con esquemas idénticos  Retorna una relación R3 con el mismo esquema de R1 y R2 que contiene todas la tuplas de R1 y todas las de R2, eliminando tuplas repetidas R1 R2
  • 14.
    21/05/13 Curso Basesde Datos 14 Ejemplo:  Administrador ∪ Productor: Código Nombre Edad 1 Jorge Campos 33 2 Enrique Muñoz 25 3 Esteban Paz 21 8 Jorge Arias 30 10 Juan Martínez 19
  • 15.
    21/05/13 Curso Basesde Datos 15 Intersección: R1 ∩ R2  Toma como argumentos dos relaciones R1 y R2 con esquemas idénticos  Retorna una relación R3 con el mismo esquema de R1 y R2 que contiene todas las tuplas que aparecen tanto en R1 como en R2 R1 R2
  • 16.
    21/05/13 Curso Basesde Datos 16 Ejemplo  Administrador ∩ Productor Código Nombre Edad 2 Enrique Muñoz 25
  • 17.
    21/05/13 Curso Basesde Datos 17 Diferencia: R1 − R2  Toma como argumento dos relaciones R1 y R2 con esquemas idénticos  Retorna una relación R3 con el mismo esquema de R1 y R2 que contiene todas las tuplas que aparecen en R1 pero no en R2 R1 R2
  • 18.
    21/05/13 Curso Basesde Datos 18 Ejemplo  Administrador − Productor:  Productor − Administrador: Código Nombre Edad 1 Jorge Campos 33 3 Esteban Paz 21 Código Nombre Edad 8 Jorge Arias 30 10 Juan Martínez 19
  • 19.
    21/05/13 Curso Basesde Datos 19  La unión, intersección y producto cartesiano son conmutativas y asociativas  La diferencia no es conmutativa ni asociativa  La intersección no es primitiva ya que puede ser expresada mediante la diferencia Propiedades
  • 20.
    21/05/13 Curso Basesde Datos 20 Reunión (JOIN)  NATURAL JOIN: R1 * R2 Si R1(A,B) y R2(B,C) el resultado de R1 *R2 es una relación R3 con esquema R3(A,B,C) donde cada tupla de R1 se concatena con cada tupla de R2 SIEMPRE Y CUANDO tengan el mismo valor del atributo en común (B). El atributo B puede ser compuesto.
  • 21.
    21/05/13 Curso Basesde Datos 21 Ejemplo Código Nombre Edad Depto 1 Jorge Campos 33 1 2 Enrique Muñoz 25 1 3 Esteban Paz 21 1 8 Jorge Arias 30 2 10 Juan Martínez 19 2 12 Anselmo Rodas 28 6 Depto Descripción 1 Administración 2 Producción 3 Ventas 4 Finanzas Empleado Departamento Atributo de Join NotaNota: En este ejemplo, el campo Depto en Empleado NO ES CF con respecto a la tabla Departamento
  • 22.
    21/05/13 Curso Basesde Datos 22 Ejemplo Empleado * Departamento Código Nombre Edad Depto Descripción 1 Jorge Campos 33 1 Administración 2 Enrique Muñoz 25 1 Administración 3 Esteban Paz 21 1 Administración 8 Jorge Arias 30 2 Producción 10 Juan Martínez 19 2 Producción
  • 23.
    21/05/13 Curso Basesde Datos 23 SEMI JOIN ( ⊳)  Idéntico al NATURAL JOIN pero la relación resultante tiene el esquema de la relación izquierda ¿Utilidad?
  • 24.
    21/05/13 Curso Basesde Datos 24 THETA JOIN (R1 ⋈ Condición R2)  El operador de comparación usado en la condición NO es el “==“ sino alguno de los siguientes: “>>“, “<<“, “>=>=“, “<=<=“, “≠≠“  Es equivalente a: σCondición (R1 X R2)
  • 25.
    21/05/13 Curso Basesde Datos 25 Ejemplo Empleado ⋈ Depto > Dep [ρ DeptoDep (Departamento)] Código Nombre Edad Depto Dep Desc 8 Jorge Arias 30 2 1 Administración 10 Juan Martínez 19 2 1 Administración 12 Anselmo Rodas 28 6 1 Administración 12 Anselmo Rodas 28 6 2 Producción 12 Anselmo Rodas 28 6 3 Ventas 12 Anselmo Rodas 28 6 4 Finanzas
  • 26.
    21/05/13 Curso Basesde Datos 26 División: R1 ÷ R2 Def 1: Sean las relaciones R1(A,B) y R2(B). El resultado de R1 ÷ R2es una relación R3 cuyo esquema esta compuesto por el atributo A, donde para todo valor de B en R2 existe una pareja en R1de A con ese valor. Def 2: R ÷ S = {t | t ∈ ΠΠK (R) y {t} x s ⊆⊆ r} con K= esquema de R – esquema de S Tuplas de S Tuplas de R
  • 27.
    21/05/13 Curso Basesde Datos 27 Ejemplo Empleado Código Nombre Edad Depto 1 Jorge Campos 33 1 2 Enrique Muñoz 25 1 2 Enrique Muñoz 25 2 3 Esteban Paz 21 1 8 Jorge Arias 30 2 10 Juan Martínez 19 2 Depto 1 2 Departamento Empleado ÷ (πDepto(Departamento)) En este ejemplo la relación empleado no está normalizada, observe que la CP es (Código, Depto) y Código  Nombre, Edad Código Nombre Edad 2 Enrique Muñoz 25
  • 28.
    21/05/13 Curso Basesde Datos 28 Ademas .. Se permite también el siguiente operador: Asignación: VbleRelacion Relación← Otra forma de renombrar atributos y el nombre de la relación ρ NuevoNombreRelación(Atributos Renombrados) (π(Lista Atributos)(R))
  • 29.
    21/05/13 Curso Basesde Datos 29 Agrupar con funciones F : Agrupar con funciones Suma(), Promedio(), Max(), Min(), Cuenta() Código Nombre Edad Depto 1 Jorge Campos 33 1 2 Enrique Muñoz 25 1 3 Esteban Paz 21 1 8 Jorge Arias 30 2 10 Juan Martínez 19 2 12 Anselmo Rodas 28 6 ¿Qué hace la siguiente consulta? Depto F Cuenta(Código) AS conteo (Emp) Renombrado de la función de Grupo Emp Atributos de Agrupamiento FFunciones de Grupo (R) Ej. Sea: SINTAXIS:
  • 30.
    21/05/13 Curso Basesde Datos 30 Extender Extend R ADD expresión AS nuevo_atributo Código Nombre Sal Bono 1 Jorge Campos 33 1 2 Enrique Muñoz 25 1 3 Esteban Paz 21 1 8 Jorge Arias 30 2 10 Juan Martínez 19 2 12 Anselmo Rodas 28 6 Emp Ej: Extend Emp ADD Sal*2 AS Saldobl
  • 31.
    21/05/13 Curso Basesde Datos 31 Ejemplo  Se genera una relación como la original pero con un atributo saldobl adicional: Código Nombre Sal Bono Saldobl 1 Jorge Campos 33 1 66 2 Enrique Muñoz 25 1 50 3 Esteban Paz 21 1 42 8 Jorge Arias 30 2 60 10 Juan Martínez 19 2 38 12 Anselmo Rodas 28 6 56 ¿Qué hace la siguiente consulta? Ej: Extend Emp ADD 1 AS num, ‘Hola’ AS mensaje