RSS

CLASE 4

27 Feb

Find all customers who have a loan, an account, or both:
(select customer_name from depositor)
Union
(select customer_name from borrower)

Find all customers who have both a loan and an account
(select customer_name from depositor)
Intersect
(select customer_name from borrower)

Find all customers who have an account but no loan
(select customer_name from depositor)
Except
(select customer_name from borrower)

Aggregate functions

These functions operate on the multiset of values of a column of a relation, and return a value
Avg: average value
Min: minimum value
Max: maximum value
Sum: sum of values
Count: number of values

Find the average account balance at the Perrydge branch
Select avg (balance)
From account
Where branch_name=’Perrydge

Find the number of tuples in the customer relation
Select count (*)
From customer

Find the number of depositors in the bank
Select count (distinct customer_name)
From depositor

Aggregate functions group by

Find the number of depositor for each branch
Select branch_name, count (distinct customer_name)
From depositor account
Where depositor account_number= account.account_number
Group by branch_name

Note: attributes it select clause outside of aggregate functions must apperar in group by list

Aggregate fuctions_Having clause

Find the names of all branches where the average account balance is more than $1.200
Select branch_name, avg (balance)
From account
Group by branch_name
Having avg (balance)>1200

Note:Predicates in the having clause are applied after the formation of groups whereas predicates in the where clause are applied before forming groups

TRADUCCION:

Buscar todos los clientes que tienen un préstamo, una cuenta, o un préstamo:
(selecciona nombre-cliente de depositante)
Unión
(selecciona nombre-cliente del prestamista)

/indica que se eligen los nombres del cliente del prestamista y depositante

Encontrar todos los clientes que tienen un préstamo y una cuenta
(nombre-cliente elegir entre depositante)
Intersección
(nombre-cliente elegir entre prestamista)

/indica elegir los clientes que tienen ambos, intersecta el nombre del cliente siempre que estén en ambas tablas y encuentra los clientes que tienen una cuenta no interesa el nombre del cliente en préstamo

Encontrar todos los clientes que tienen una cuenta pero no de préstamo
(selecciona nombre-cliente del depositante)
Salvo
(selecciona nombre-cliente del prestamista)

/indica elegir los clientes que solo tienen cuenta elegir el nombre del cliente salvo el nombre del prestamista

Funciones de agregado

Estas funciones operan sobre el conjunto múltiple de los valores de una columna de una relación, y devuelven un valor
Puntuación o promedio: valor medio
Min: valor mínimo
Max: el valor máximo
Suma: suma de los valores
Número: número de valores con los que se cuentan (datos)

Encuentre el saldo de la cuenta promedio de la marca Perrydge
Seleccione avg (balanza)
De la tabla cuenta
Cuando branch_name(marca) = ‘Perrydge’
*si lo encuentra sacara el promedio balance

Busque el número de tuplas en la relación cliente
Selecciona count (*)
De tabla cliente

/indica que se van a contabilizar las filas de la tabla cliente

Encuentra el número de depositantes en el banco
Seleccciona count (distintos nombre-cliente)
Desde la tabla depositante

/indica que se van a encontrar el numero de depositantes en el banco y hace una distinción y los contabiliza

Funciones agregadas – grupo de

Encuentra el número de depositantes para cada marca
Seleccione branch_name, cuenta (distintos nombre-cliente)
De la tabla cuenta y depositantes
Donde depositante.cuenta-depositante = account.account_number
Grupo de branch_name

/indica encontrar el numero de depositantes para cada marca seleccionando el nombre de la marca y la cantidad de distintos nombres de clientes, de dos tablas donde se encuentre el número de cuenta en depositante igual a el numero de cuentas y los agrupa por nombre de marcas

Nota: Los atributos que seleccione la cláusula fuera de las funciones de agregado debe juristas figuran en el grupo de lista

Agregado de funciones teniendo cláusula

Buscar los nombres de todas las marcas donde el saldo de la cuenta promedio es de más de $ 1.200
Seleccione branch_name, avg (balance)
De la cuenta
Grupo de branch_name
Tener promedio (saldo)> 1200

/indica el nombre de las marcas con saldo o mas de 1200, selecciona la marca promedio de la tabla cuenta del grupo de marcas con promedio mayor de 1200
Nota: Predicados en la cláusula que se aplican después de la formación de grupos, mientras que los predicados en la cláusula where se aplican antes de la formación de grupos

 
Deja un comentario

Publicado por en febrero 27, 2011 en TALLER DE BASE DE DATOS

 

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

 
A %d blogueros les gusta esto: