Professional Documents
Culture Documents
Prctica preliminar
20/05/2010
Distinct
Id
Nombre
Direccion
Telefono
Juan Perez
Calle 3 No. 34
938-2343-322
Juan Lopez
2 pte nte 98
765-8356-224
Rosa Gmez
675-4567-211
Juan Lopez
Calle Amapolas 10
978-5976-435
20/05/2010
All
Id
Nombre
Direccion
Telefono
Juan Perez
Calle 3 No. 34
938-2343-322
Juan Lopez
2 pte nte 98
765-8356-224
675-4567-211
Juan Lopez
978-5976-435
Calle Amapolas 10
* y operadores
Id
Nombre
Direccin
Telfono
Salario
Juan Perez
Calle 3 No. 34
938-2343-322
4,500
Juan Lopez
2 pte nte 98
765-8356-224
6,500
Rosa Gmez
675-4567-211
13,200
Juan Lopez
Calle Amapolas 10
978-5976-435
12,100
20/05/2010
Prcticas
where
20/05/2010
Renombramiento
20/05/2010
Prcticas
20/05/2010
union
20/05/2010
intersect
except
20/05/2010
Funciones de agregacin
Avg,min,max
20/05/2010
Sum, count
from datos,datosexternos
La clausula group by nos sirve para formar grupos de tuplas con el mismo valor.
Para establecer condiciones a las agrupaciones creadas con group by, utilizamos la clausula
having.
10
20/05/2010
Valores nulos
Prcticas I
11
20/05/2010
Prcticas II
Listar los alumnos con promedio aprobatorio del nivel 2 en orden descendente
Unir con una consulta a los alumnos de primer ciclo nivel 1, con los alumnos de
primer ciclo nivel2.
Seleccionar a los alumnos del primer ciclo que no estn cursando lenguas.
Calcular el promedio de los alumnos que tengan como en algn apellido Garca.
Subconsultas anidadas
12
20/05/2010
Subconsultas anidadas
Las sub consultas pueden ser usadas para los siguientes propsitos:
Proveer valores para condiciones en clusulas WHERE, HAVING y
START WITH de sentencias SELECT
Definir el conjunto de filas a ser insertadas en una tabla de una
sentencia INSERT o CREATE TABLE
Definir el conjunto de filas a ser incluidas en una vista o snapshot en
una sentencia CREATE VIEW o CREATE SNAPSHOT
Definir uno o ms valores para ser asignados a filas existentes en una
sentencia UPDATE
Definir una tabla para ser operada por el contenido de una consulta.
(Esto se hace colocando la sub consulta en la clusula FROM. Esto
puede hacerse tambin en sentencias INSERT, UPDATE y DELETE.
Subconsultas anidadas
Donde:
operator incluye un operador de comparacin como >, = o IN
Las sub consultas son a menudo referidas como sentencias SELECT anidadas,
sub-SELECT, o SELECT internos.
13
20/05/2010
Datos Externos
select nombre,salario
from Datos
where salario>(select min(salario)
from DatosExternos)
14
20/05/2010
Datos Externos
select nombre,direccion
from Datos
where nombre IN (select nombre
from DatosExternos
where nombre like '%J%')
Para que una fila de una subconsulta con >ALL satisfaga la condicin
especificada en la consulta externa, el valor de la columna que presenta
la subconsulta debe ser mayor que cada valor de la lista de los valores
devueltos por la subconsulta.
De forma parecida, >ANY significa que, para que una fila satisfaga la
condicin especificada en la consulta externa, el valor de la columna que
presenta la subconsulta debe ser mayor que, como mnimo, uno de los
valores de la lista devuelta por la subconsulta.
15
20/05/2010
Ejemplo
select nombre,salario
from datos
where id =any (select idusuario
from contactos
where origenusuario=0)
Ejemplo
Datos
Datos Externos
select Nombre,salario
from Datos
where salario >all(select salario
from DatosExternos
where salario<10000 )
16
20/05/2010
Ejemplo
17
20/05/2010
Ejemplo
Datos
Datos Externos
18
20/05/2010
Prcticas
19