Ejercicio Mysql

Click here to load reader

download Ejercicio Mysql

of 20

description

TRABAJO

Transcript of Ejercicio Mysql

Bases de Datos en MySQL

Creacin de tablas e insercin de datosBases de Datos en MySQLProfa: Blanca Estela Conde Hernndez

Modelo Entidad-Relacin de una escuela

Base de datos: Escuela1. Genera las siguientes tablas:ALUMNOSDATOTIPO DE DATOCLAVE_ALUMNOINTNOMBREVARCHAR(60)EDADINTCURSO_ACTUALINT

PROFESORESDATOTIPO DE DATOCLAVE_PROFESORINTNOMBREVARCHAR(60)

Clave principal (PK)EJEMPLO:

Mysql> CREATE TABLE ALUMNOS(CLAVE_ALUMNO INT, -> NOMBRE VARCHAR(60), EDAD INT, -> CURSO_ACTUAL INT, PRIMARY KEY (CLAVE_ALUMNO ));

Tablas(2)AULASDATOTIPO DE DATOCLAVE_AULAINTCAPACIDADINT

ASIGNATURASDATOTIPO DE DATOCLAVE_ASIGNATURAINTCLAVE_AULAINTCURSOVARCHAR(30)DESCRIPCIONVARCHAR(70)

EJEMPLO:

Mysql> CREATE TABLE ASIGNATURAS(CLAVE_ASIGNATURA -> INT, CLAVE_AULA INT, CURSO VARCHAR(30), -> DESCRIPCION VARCHAR(60) , PRIMARY KEY -> (CLAVE_ASIGNATURA ), FOREING KEY (CLAVE_AULA) -> REFERENCES AULAS(CLAVE_AULA));

Clave Foranea (FK)

Tablas(3)LISTASDATOTIPO DE DATOCLAVE_LISTAINTCLAVE_ALUMNOINTCLAVE_PROFESORINTCLAVE_ASIGNATURAINT

HORARIOSDATOTIPO DE DATOCLAVE_HORARIOINTCLAVE_ASIGNATURAINTDIAVARCHAR(10)HORA_INICIOTIMEHORA_FINTIME

EJEMPLO:

Mysql> CREATE TABLE LISTAS(CLAVE_LISTA INT, CLAVE_ALUMNO INT, -> CLAVE_PROFESOR INT, CLAVE_ASIGNATURA INT, PRIMARY KEY-> (CLAVE_LISTA), FOREING KEY (CLAVE_ALUMNO) REFERENCES-> ALUMNOS(CLAVE_ALUMNO), FOREIGN KEY(CLAVE_PROFESOR) REFERENCES-> PROFESORES(CLAVE_PROFESOR), FOREIGN KEY(CLAVE_ASIGNATURA)-> REFERENCES ASIGNATURAS(CLAVE_ASIGNATURA));

CLAVE_ALUMNONOMBREEDADCURSO_ACTUAL1JUAN PEREZ ROSAS1232JORGE LOPEZ FLORES1123LAURA DIAZ HERNANDEZ1334TANIA MONDRAGON GARCIA1125ALEJANDRO CANSECO DIAZ101

2. Inserta los siguientes datos en la tablas alumnos:EJEMPLO:

Mysql> INSERT INTO ALUMNOS VALUES(1, JUAN PEREZ ROSAS, 12, 3);

CLAVE_PROFESORNOMBRE1ADRIANA GONZALEZ ROBLES2JUAN GARCIA PEREZ3ADRIAN FERNANDEZ ROJAS4LAURA ITURRIA ESCOBAR5CLAUDIA GUZMAN JIMENEZ

2. Inserta los siguientes datos en la tablas profesor:EJEMPLO:

Mysql> INSERT INTO PROFESORES VALUES(1, ADRIANA GONZALEZ ROBLES);

CLAVE_AULACAPACIDAD150260350

2. Inserta los siguientes datos en la tablas aulas:EJEMPLO:

Mysql> INSERT INTO AULAS VALUES(1, 50);

CLAVE_ASIGNATURACLAVE_AULACURSODESCRIPCION12HISTORIAHISTORIA DE MEXICO23MATEMATICASARITMETICA BASICA33FILOSOFIALOGICA41QUIMICAQUIMICA ELEMENTAL52TICSINFORMATICA BASICA

2. Inserta los siguientes datos en la tablas asignaturas:EJEMPLO:

Mysql> INSERT INTO ASIGNATURAS VALUES(1, 2, HISTORIA, DESCRIPCION);

CLAVE_HORARIOCLAVE_ASIGNATURADIAHORA_INICIOHORA_FIN12LUNES10:0011:0023MARTES7:008:0035MIERCOLES11:0012:0041JUEVES8:009:0054JUEVES9:0010:00

2. Inserta los siguientes datos en la tablas horarios:EJEMPLO:

Mysql> INSERT INTO HORARIOS VALUES(1,2,LUNES,10:00,11:00);

CLAVE_LISTACLAVE_ALUMNOCLAVE_PROFESORCLAVE_ASIGNATURA15132425351343315331

2. Inserta los siguientes datos en la tabla listas:EJEMPLO:

Mysql> INSERT INTO LISTAS VALUES(1,5,1,3);

Consultas de datos: SELECTMostrar todos los campos de la tabla alumnosSELECT * FROM alumnos;

Muestra el nombre y curso actual de los alumnos que tienen 10 aosSELECT nombre,curso FROM alumnos WHERE edad=10;

Muestra el nombre de los alumnos que cursan 3 y tienen 10 o mas aos SELECT nombre FROM alumnos WHERE curso_actual=3 AND edad>=10;

Consultas de datos: SELECT (2)Muestra todos los datos de los alumnos donde su edad este entre 8 y 12 aos SELECT * FROM alumnos WHERE edad BETWEEN 8 AND 12;

Muestra los datos de los alumnos donde el nombre empiece con M y cursen 3

SELECT * FROM alumnos WHERE nombre LIKE M% AND curso_actual=3;

Ejercicios: ConsultasObtener el nombre de los alumnos que actualmente estan cursando 2 ao

Obtener los datos de los alumnos cuya edad sea menor o igual a 11 aos o que estn cursando 3

Obtener el nombre de los alumnos donde su nombre empiece con J

Obtener los datos de los alumnos que estn cursando entre 2 y 3er ao

Ordenar datos: ORDER BYOrdenar ascendentemente los nombres de los alumnosSELECT * FROM alumnos ORDER BY nombre;

Muestra el nombre y la edad de los alumnos ordenndolos del mayor al menor SELECT nombre, edad FROM alumnos ORDER BY edad DESC;

Muestra los nombres de los alumnos que cursan 3 ordenados alfabticamente SELECT nombre FROM alumnos WHERE curso_actual=3 ORDER BY nombre;

Ejercicios de ordenacinMuestra los datos de los profesores ordenados alfabticamente

Muestra el nombre y edad de los alumnos que cursan 2 ordenando de la Z a la A

Muestra los datos de los alumnos ordenndolos por curso del mayor a menor

Consultas a varias tablasMuestra el nombre de la asignatura y el numero de aula donde esta asignadaSELECT asignaturas.curso, aulas.clave_aulaFROM asignaturas, aulasWHERE aulas.clave_aula=asignaturas.clave_aula;

Muestra las aulas donde se imparte la asignatura de historiaSELECT aulas.clave_aula FROM aulas,asignaturas WHERE asignaturas.curso=Historia AND aulas.clave_aula=asignaturas.clave_aulas;

Consultas a varias tablas(2)Muestra los das y horarios en los que se imparte la asignatura de historiaSELECT horarios.hora_inicio, horarios.hora_fin,horarios.diaFROM horarios, asignaturasWHERE asignaturas.nombre=Historia AND horarios.clave_asignatura=asignaturas.clave_asignaturaORDER BY horarios.dia,horarios.hora_inicio

Consultas a varias tablas(3)Muestra los alumnos cuyo profesor es Adrian Fernandez RojasSELECT DISTINC alumnos.nombreFROM alumnos, profesores, listasWHERE profesores.nombre=Adrian Fernandez Rojas AND listas.clave_profesor=profesores.clave_profesor AND alumnos.clave_alumno=listas.clave_alumnoORDER BY alumnos.nombre;

Consultas a varias tablas(4)Muestra las asignaturas que comienzan entre 8 y 10 el da JuevesSELECT asignaturas.curso, horarios.hora_inicio, horarios.hora_fin, horarios.diaFROM horarios, asignaturasWHERE horarios.clave_asignatura=asignaturas.clave_asignaturaAND horarios.hora_inicio BETWEEN 08:00:00 AND 10:00:00AND horarios.dia=lunesORDER BY horarios.dia,horarios.hora_inicio, asignaturas.nombre