CONSULTAS APLICATIVAS PARA SQL

Anuncio
qwertyuiopasdfghjklzxcvbnmqw
ertyuiopasdfghjklzxcvbnmqwert
yuiopasdfghjklzxcvbnmqwertyui
Consultas en sql – 2da entrega
opasdfghjklzxcvbnmqwertyuiopa
Ingeniería de Sistemas - UNICA
sdfghjklzxcvbnmqwertyuiopasdf
ghjklzxcvbnmqwertyuiopasdfghj
klzxcvbnmqwertyuiopasdfghjklz
xcvbnmqwertyuiopasdfghjklzxcv
bnmqwertyuiopasdfghjklzxcvbn
mqwertyuiopasdfghjklzxcvbnmq
wertyuiopasdfghjklzxcvbnmqwe
rtyuiopasdfghjklzxcvbnmqwerty
uiopasdfghjklzxcvbnmqwertyuio
pasdfghjklzxcvbnmqwertyuiopas
dfghjklzxcvbnmqwertyuiopasdfg
VII CICLO
FLORES ARCE, DAVIS
PURAY HUAMANI, MIRIAM
QUISPE CONDORI, CARMEN
ROJAS PURAY, CARLOS
INDICE
1.- Consulta SELECT, WHERE, FROM
2.- Consulta el (*)
3.- Consulta con condiciones: WHERE=’__’
4.- El uso del DISTINCT
5.- Consulta del uso del ORDER BY
6.- Consulta del uso del ASC, DESC
7.- Consulta de opción AND
8.- Consulta de opción OR
9.- Consulta de opción WHERE-IN
10.- Consulta de opción NOT IN
11.- Consulta de rangos el BETWEEN
12.- Consulta de opción- rangos mediante operadores
13.- Consultas del uso de LIKE,’%’
14.- Consulta de las funciones integradas: COUNT, SUM, AVG, MAX, MIN
15.- Consulta con el uso del RTRIM
16.- Múltiples consultas: utilizando el order by, el count, el where; etc.
17.- El uso del HAVING
18.- El uso del INNER JOIN
19.- El uso del MIN y el MAX
20.- EL MIN, MAX; combinaciones
21.- El uso del AS
DIVERSAS CONSULTAS
El uso del WHERE, FROM, SELECT
La clausula “SELECT”: especifica que columnas serán vistan en el resultado de la consulta
La clausula “FROM”: especifica que tablas serán seleccionadas
La clausula “WHERE”: especifica que filas serán seleccionadas
SELECT cod_area, descripcion FROM area
EL USO DEL (*)
SELECT *FROM aula
CONSULTAS CONDICIONALES
SELECT* FROM profesor WHERE apellido= 'Jose'
select cod_pfin, cod_clase from profinal where cod_est= 20101501
EL USO DEL DISTINCT
SELECT DISTINCT NOMBRE, APELLIDO FROM estudiante
SELECT DISTINCT DESCRIPCION, HECHO FROM inasistencia
EL USO DEL ORDER BY
select nombre, fechnac from estudiante order by nombre, fechnac
EL USO DEL ASC Y DESC
select *from estudiante order by nombre desc, cod_est asc
EL USO DEL AND
select*from area where cod_area='A009' and descripcion= 'CTA'
EL USO DEL OR
SELECT*FROM nota WHERE valor='10' OR valor='14 '
EL USO DEL IN
SELECT *FROM profesor WHERE nombre IN ('QUISPE CARRIZALES', 'BARRIOS')
EL USO DEL NOT IN
SELECT * FROM estudiante WHERE nombre NOT IN ('luis fernando','carlos
antonio');
EL USO DEL RANGO - BETWEEN
select*from nota where valor between '11' and '15'
EL USO DEL AND ENTRE RANGOS
SELECT COD_EST, valor
FROM profinal WHERE valor >= 15 AND valor <=18
EL USO DEL LIKE ‘%a’, ‘a%’, ‘%a%’
SELECT * FROM estudiante WHERE nombre LIKE 'Luis%'
select cod_est, tutor from estudiante where direccion like '%meza%'
select *from logger where pass like '%53'
select cod_tip from logger where pass like '%53'
El USO DEL SUM Y DEL AVG,MIN Y MAX EN CONJUNTO
select SUM (valor) as promedio from profinal where cod_clase='5AARTE'
select SUM (cod_est) as notaSUM,
AVG (cod_est) as notaAVG,
MIN (cod_est) as notaMIN,
MAX(cod_est) as notaMAX
from nota
EL USO DEL COUNT (*)
SELECT COUNT (*) AS CANTIDAD_DE_ALUMNOS FROM estudiante
EL USO DEL COUNT (*) CON EL ALIAS ‘AS’
SELECT COUNT (DISTINCT valor) AS LAS_NOTAS FROM nota
EL USO DEL RTRIM
SELECT DISTINCT RTRIM (NOMBRE) + ' IN ' + RTRIM (direccion) AS NOM_APEL
FROM estudiante
MULTIPLES CONSULTAS
SELECT COD_CLASE, COD_PRO, COUNT(*) AS CANTIDAD_CLASE FROM clase GROUP BY
cod_clase, cod_pro
MULTIPLES CONSULTAS CON EL USO DE OPERADORES (<>)
SELECT FECHNAC , COUNT (*) AS PRO_CANT FROM estudiante WHERE cod_est <>
20101505
group by fechnac
order by PRO_CANT
EL USO DEL HAVING
SELECT FECHNAC , COUNT (*) AS PRO_CANT FROM estudiante WHERE cod_est <>
20101505
group by fechnac
having COUNT(*) > 1 order by PRO_CANT
EL USO DEL SUM CON MULTIPLES CONSULTAS CONDICIONALES
select SUM(valor ) as renuevo from nota where cod_clase in (select
cod_clase from clase where cod_area= 'A001')
SELECT NOMBRE FROM estudiante WHERE cod_est IN (SELECT cod_est FROM aula
WHERE cod_aula IN (SELECT cod_aula FROM area WHERE cod_area= 'A003' AND
descripcion ='MATEMATICA' ))
EL USO DEL INNER JOIN
SELECT nombre , cod_area
clase.cod_pro
FROM profesor, clase WHERE profesor.cod_pro =
SELECT TUTOR, BIMESTRE, cod_pro FROM estudiante, nota,clase WHERE
estudiante.cod_est=nota.cod_est AND nota.cod_clase=clase.cod_clase
SELECT NOMBRE , cod_aula FROM profesor INNER JOIN clase ON
profesor.cod_pro = clase.cod_pro
EL USO DEL MIN
select MIN (valor) as elmin from nota where bimestre='I'
EL USO DEL MAX
select MAX (valor) as elmax from nota WHERE bimestre= 'II'
EL USO DEL MIN Y MAX EN MULTIPLES COMBINACIONES
SELECT COUNT (BIMESTRE) FROM NOTA
SELECT MIN (BIMESTRE) AS PERIODO FROM nota WHERE valor ='14'
USO DEL AS
SELECT COUNT (*) AS AREA_FERMIN FROM area
EJERCICIOS CON ESTAS CONSULTAS
1.- CREACION DE UNA BASE DE DATOS EN CONSOLA.
CREATE DATABASE COLEGIODB
ON
(NAME=COLEGIODB,
FILENAME='C:\COLEGIODB\COLEGIODB.mdf',
SIZE=10MB,
MAXSIZE=20,
FILEGROWTH=2 )
LOG ON
(NAME=AMIGO_LOG,
FILENAME='C:\COLEGIODB\COLEGIODB_log.ldf',
SIZE=10MB,
MAXSIZE=20,
FILEGROWTH=2);
2.- lista de notas de alumnos por curso, nota.
3.- USANDO LA SENTENCIA SELECT SE USARA PARA VER LA FECHA DE CUMPLEAÑOS DE LOS
DOCENTES.
4.- OBTENER LOS DATOS DE LOS PROFESORES CUYA COLUMNA “DIRECCION” ES NULA
5.- CON UNA CONSULTA MUESTRA EL NOMBRE Y EDAD DE CADA UNO DE LOS ALUMNOS
(LA EDAD SE CALCULA RESTANDO AL AÑO DE NACIMIENTO 2010).
6.- Con una consulta se concatena el apellido y el nombre de los
estudiantes y se transforma el apellido en mayúscula.
7.- Seleccionar al estudiante con promedio
final=PF11
select cod_est, cod_clase,VALOR
from profinal
where cod_pfin = 'PF11'
ORDER BY cod_est
COMPUTE SUM(VALOR);
8.-ordenar
a
los
estudiantes
por
codigo
de
promediofinal y por codigo del estudiante sumando
sus promedios finales
select cod_pfin,cod_est, cod_clase,VALOR
from profinal
ORDER BY cod_pfin,cod_est
COMPUTE SUM(VALOR) by cod_pfin;
9.-seleccionar al estudiante cuyo sexo sea masculino
select sum(valor) as va
from profinal
where cod_pfin ='PF11'(select cod_est from estudiante where
sexo ='M');
10.- contar cuantos profesores enseñan en el colegio
select COUNT
(distinct nombre)
as nombre_prof
from profesor;
11.- seleccionar y sumar cuantas aulas hay en 5to grado
select seccion,grado,
COUNT(*) as sec_grado
from aula
group by seccion, grado;
12.- SELECCIONAR A LOS ALUMNOS QUE TENGAN UNA CALIFICACION DE
19 EN EL ARE DE COMUNICACIÓN
select distinct e.nombre as Alumno, ar.descripcion as Area, n.valor as
Calificacion
from estudiante as e
inner join nota as n on e.cod_est=n.cod_est
inner join aula as a on e.cod_aula=a.cod_aula
inner join clase as c on a.cod_aula=c.cod_aula
inner join area as ar on c.cod_area=ar.cod_area
where descripcion ='COMUNICACION' AND valor = '19';
13.- seleccionar todos los doscentes que enseñan el area de
matematica o comunicación
select DISTINCT p.nombre as Profesor ,ar.descripcion
from profesor as p
INNER JOIN clase as c on p.cod_pro=c.cod_pro
inner join area as ar on c.cod_area=ar.cod_area
where descripcion = 'MATEMATICA'or
descripcion = 'COMUNICACION'
order by nombre;
14.- Seleccionar la relacion de alumnos matriculados en el
area de INGLES
SELECT distinct e.nombre as alumno, ar.descripcion
from estudiante as e
inner join nota as n on e.cod_est=n.cod_est
inner join clase as c on n.cod_clase=c.cod_clase
inner join area as ar on c.cod_area=ar.cod_area
where descripcion='INGLES'
15.- Seleccionar los estudiantes del 5to grado “C” que hayan nacido en el año
1993
select distinct e.nombre as alumno,e.fechnac as nacimiento ,a.grado as
Grado, a.seccion as Sección
from estudiante as e inner join aula as a
on e.cod_aula=a.cod_aula
where grado='5' and seccion='c'
and fechnac between '1993/01/01' and '1993/12/31'
order by nombre;
16.- Seleccionar a todos los alumnos ordenados por promedio final
descendente
select e.nombre as alumno, pr.valor as promedio, pr.cod_clase
from estudiante as e inner join profinal as pr on e.cod_est=pr.cod_est
order by valor desc;
Descargar