Vous êtes sur la page 1sur 9

GUIA DE LABORATORIO N 01 1.

OBJETIVO El desarrollo de la gua de laboratorio N 01, busca lograr los siguientes objetivos en el participante: Crear consultas cruzadas

2. TEMAS A DESARROLLAR La gua de laboratorio N 01 desarrolla los siguientes temas: a) Consultas con predicados b) Actualizacin de datos c) Clculos Antes de iniciar el desarrollo de la gua de laboratorio N 01, recordamos revisar el documento de GUIA PRACTICA DE SQL-II.
Nota

3. DESARROLLO DEL CASO PRCTICO Para desarrollar el Caso Prctico de la Unidad 01 utilice base de datos BDNOTAS

PROYECTO VISUAL STUDIO 2010 Para ello realizamos los siguientes pasos: a) Iniciamos SQL Server 2008 R2 asignamos la base de datos BDNOTAS y desde el editor de consultas ejecutaremos las siguientes instrucciones :

--01-- Los alumnos cuyos telfonos empienzan con el n 7 SELECT nombres, telefono FROM Alumnos WHERE telefono LIKE '7%'

CP1

--02--Los alumnos varones que an nacido apartir de 1980 SELECT nombres, sexo, Fecnac FROM Alumnos WHERE Fecnac >= '1980'

--03--Los cursos que cuestan 100 nuevos soles SELECT curso, precio FROM Curso WHERE precio = 100

--04--Los profesores cuyos nombres empienzan con la letra A SELECT Nombre FROM Profesor WHERE Nombre like 'A%'

CP2

--05--Crear una consulta para descontar el 15% el precio de los cursos --PASO I En primer lugar mostramos actuales antes de proceder los descuento SELECT * FROM curso

--PASO II ejecutamos la consulta de actualizacion UPDATE Curso SET precio =precio * 1.15 --PASO III devolvemos el resultado de actualizacion SELECT * FROM curso

CP3

--06-- Mostrar los nombres la ciudad y telfono de los alumnos del profesor 'ALVEAR FERNANDEZ Miguel' SELECT a.Nombres, a.Ciudad, a.telefono, d.Nombre FROM (((Alumnos a INNER JOIN Registro_cab b ON a.Codalu = b.Codalu) INNER JOIN Registro_det c ON c.numdoc = b.numdoc) INNER JOIN Profesor d ON c.CodProf = C.CodProf) WHERE d.Nombre = 'ALVEAR FERNANDEZ Miguel'

CP4

--07-- Crear una consulta para mostrar el nombre del alumno, el nombre del curso, las notas de prctica, parcial, final, -- promdeio y un mensaje de Aprobado, Desaprobado segn corresponda. SELECT a.Nombres, b.Curso, d.Practica, d.Parcial, d.Final, ROUND((d.Practica + d.Parcial+ d.Final)/3,0) As Promedio, CASE WHEN (d.Practica + d.Parcial+ d.Final)/3 > 12.5 THEN 'Aprobado' ELSE 'Desaprobado' END AS Mensaje FROM (((Registro_cab c INNER JOIN Alumnos a ON a.Codalu = c.Codalu)INNER JOIN Registro_det d ON c.numdoc = d.numdoc) INNER JOIN Curso b ON d.Codcur = b.Codcur) ORDER BY A.Nombres

--08--Mostrar todos los cursos, el saldo y los nombres de los Alumnos que an deben el pago de un curso SELECT a.Nombres,b.Curso, b.Precio - d.Pago As Saldo FROM (((Registro_cab c INNER JOIN Alumnos a ON a.Codalu= c.Codalu) INNER JOIN Registro_det d ON c.numdoc = d.numdoc) INNER JOIN Curso b on d.Codcur = b.CodCur) ORDER BY A.Nombres ASC

CP5

--09--Mostrar las alumnas y los cursos en cuales han desaprobado el examen final SELECT b.Nombres,b.Sexo, c.Curso, d.Final FROM (Registro_cab a INNER JOIN Alumnos b ON a.Codalu=b.Codalu) INNER JOIN Registro_det d ON d.numdoc = a.numdoc INNER JOIN Curso c ON c.Codcur = d.Codcur WHERE b.Sexo = 'F' AND d.Final < 12.5

CP6

---10--Crear una consulta de "Promocin" , si el alumno an debe paragar el 5% del valor del curso . Si no debe se le descontar el el 15% del curso. Los campos a mostrar son: Nombre del alumno Curso, precio del curso, saldo y precio con descuento. SELECT c.Curso, b.Nombres, c.Precio, c.Precio - d.Pago AS Saldo, CASE WHEN c.Precio-d.Pago >0 THEN c.Precio * 1.15 ELSE c.Precio * 0.5 END as Promocion FROM (((Registro_cab a INNER JOIN Alumnos b ON a.Codalu = b.Codalu) INNER JOIN registro_det d ON d.numdoc = a.numdoc) INNER JOIN Curso c ON c.Codcur = d.Codcur)

---11--Mostrar el total recaudado por concepto de cada curso SELECT a.curso, SUM(b.Pago) AS Total FROM Curso a INNER JOIN Registro_det b On a.Codcur = b.Codcur GROUP BY a.Curso

CP7

---12--Mostrar la catidad total de alumnos aprobados y reprobados por cada curso SELECT a.Curso, COUNT(b.final) AS T_des FROM Curso a INNER JOIN Registro_det b ON a.codcur = b.codCur WHERE b.final < 12.5 GROUP BY a.Curso

---13--Mostrar la catidad total de alumnso aprobados y reprobados por cada profesor SELECT a.Nombre, COUNT(b.final) AS T_des FROM Profesor a INNER JOIN Registro_det b ON a.codprof = b.codprof WHERE b.final < 12.5 GROUP BY a.Nombre

--14 -- Mostrar la acntidad total pagada por cada alumno SELECT a.Nombres, SUM(d.Pago) AS Total FROM ((Alumnos a INNER JOIN Registro_cab b On a.Codalu = b.Codalu) INNER JOIN Registro_det d ON d.numdoc = b.numdoc) GROUP BY a.Nombres

CP8

--15-- Moatrar un resumen de la cantidad de cursos aprobados y desaprobados por varones y mujeres SELECT a.sexo, count(d.final) AS Aprobados FROM ((Alumnos a INNER JOIN Registro_cab c On c.codalu = a.codalu) INNER JOIN Registro_det d ON d.numdoc = c.numdoc) WHERE d.final > 12.5 GROUP BY a.sexo

--16--LISTA DE ALUMNOS MASCULINOS D CARAZ Y HUARAZ SELECT * FROM Alumnos WHERE Ciudad = 'CARAZ' AND Sexo = 'M' OR Ciudad = 'HUARAZ' AND Sexo = 'M'

CP9

Vous aimerez peut-être aussi