viernes, 16 de diciembre de 2011

Clase repaso para prueba 16.12.1011

el comando DELETE borra contenido
y el comando DROP borra todo


--listar las propiedades que tiene(arrienda) un cliente
(nombre, apellido, numprop, finicio(arriendo))

SELECT C.nombre, C.apellido, A.numpropietario, Afinicio
FROM cliente C, arriendo A
WHERE C.numcliente = A.numcliente
AND C.nombre = 'Juan'
AND C.apellido = 'Perez'

* aca arriba seleccionamos un dato de 2 tablas


----selecionamos numeros de oficinas de valdivia
select numOficina
from oficina
where ciudad = 'valdivia'

-----selecionamos empleados que trabajen en la oficna de valvidia
select numEmpleado, nombre, apellido
from empleado
where numOficina in (select numOficina
from oficina
where ciudad = 'Valdivia')


----salario maximo de las mujeres
select max(salario)
from empleado
where sexo = 'F'

comando TRIM quita los espacios en blanco

-----crear secuencia en tabla t1
create sequence seqt1
start with 10
increment by 10

select seqt1.nextval from dual
insert into t1 values (seqt1.nextval,'22')


----salario promedio de los empleados
select nombre, apellido, salario, (select avg(salario) from empleado) as promedio, salario - (select avg(salario) from empleado) as diferencia)



---agrupar por numero de oficina empleado reanta promedio max y min de empleados.
select numOficina, count(*), avg(salario) as promedio, max(salario) as salario_maximo, min(salario) as salario_minimo
from empleado
group by numOficina


----listar oficina con promedio de salario mas alto
select numOficina, avg(salario)
group by numOficina


having avg(salario) = (select max(salario))
from empleado
group by numoficina

---listar las ciudades que tengan mas de 2 oficinas

select ciudad, count(numoficina) as cantidad_de_oficinas
from Oficina
group by ciudad
having count(numoficina)>2

No hay comentarios:

Publicar un comentario