Vous êtes sur la page 1sur 11

IEST MANUEL NUÑEZ BUTRÓN - JULIACA

C.P. DESARROLLO DE SISTEMAS DE INFORMACIÓN

PRÁCTICA CALIFICADA DE BASE DE DATOS II


NOMBRES Y APELLIDOS: Ruben F. Apaza Mamani
TEMA: LENGUAJE SQL
1.- Crear la base de datos PRACTICA10, y las siguientes tablas
TCURSO, TALUMNO, TMATRICULA Con sus respectivos atrivutos.

-- eliminamos la base de datos "practica10" if xiste


DROP​ ​DATABASE​ ​IF​ ​EXISTS​ practica10;

-- creamos la base de datos "practica10"


CREATE​ ​DATABASE​ practica10;

-- hacemos uso de la base de datos "practica10"


USE​ practica10;

-- creamos la tabla "tcurso"


CREATE​ ​TABLE​ tcurso(
cod_curso ​DECIMAL​(​5​,​0​),
desc_curso ​CHAR​(​30​),
costo ​NUMERIC​(​10​,​2​),
est_curso ​CHAR​(​1​),
vacante ​NUMERIC​(​4​,​0​),
​PRIMARY​ ​KEY​(cod_curso)
);
-- creamos la tabla "talumno"
CREATE​ ​TABLE​ talumno(
cod_alumno ​DECIMAL​(​6​,​0​),
nom_alumno ​VARCHAR​(​40​),
ape_alumno ​VARCHAR​(​40​),
dir_alumno ​VARCHAR​(​80​),
sex_alumno ​CHAR​(​1​),
fec_nac ​DATE​,
est_alumno ​CHAR​(​1​),
​PRIMARY​ ​KEY​(cod_alumno)
);
IEST MANUEL NUÑEZ BUTRÓN - JULIACA
C.P. DESARROLLO DE SISTEMAS DE INFORMACIÓN

-- creamos la tabla "tmatricula"


CREATE​ ​TABLE​ tmatricula(
nro_docum ​CHAR​(​15​),
cod_alumno ​DECIMAL​(​6​,​0​),
cod_curso ​DECIMAL​(​5​,​0​),
fec_matr ​DATE​,
monto ​NUMERIC​(​10​,​0​),
est_mtr ​CHAR​(​1​),
​FOREIGN KEY​(cod_alumno) ​REFERENCES​ talumno(cod_alumno),
​FOREIGN KEY​(cod_curso) ​REFERENCES​ tcurso(cod_curso),
​PRIMARY​ ​KEY​(nro_docum)
);
-- Aquí el resultado

-- 2.- Ingresar 10 registros en las tablas "tcurso", "talumno"


-- 10 registros en la tabla "tcurso"
INSERT​ ​INTO​ tcurso() ​VALUES​(​1​, ​'Pasteleria'​, ​260​, ​'a'​, ​20​);
INSERT​ ​INTO​ tcurso() ​VALUES​(​2​, ​'Costura'​, ​220​, ​'a'​, ​26​);
INSERT​ ​INTO​ tcurso() ​VALUES​(​3​, ​'Peinado'​, ​190​, ​'a'​, ​24​);
INSERT​ ​INTO​ tcurso() ​VALUES​(​4​, ​'Dibujo'​, ​230​, ​'a'​, ​30​);
INSERT​ ​INTO​ tcurso() ​VALUES​(​5​, ​'Programacion WEB'​, ​300​, ​'a'​, ​16​);
INSERT​ ​INTO​ tcurso() ​VALUES​(​6​, ​'Diseño gráfico'​, ​290​, ​'a'​, ​16​);
INSERT​ ​INTO​ tcurso() ​VALUES​(​7​, ​'Inglés'​, ​160​, ​'a'​, ​30​);
INSERT​ ​INTO​ tcurso() ​VALUES​(​8​, ​'Francés'​, ​280​, ​'a'​, ​30​);
INSERT​ ​INTO​ tcurso() ​VALUES​(​9​, ​'Aplicaciones para Android'​, ​310​, ​'a'​, ​16​);
INSERT​ ​INTO​ tcurso() ​VALUES​(​10​, ​'Cocina peruana'​, ​260​, ​'n'​, ​20​);
IEST MANUEL NUÑEZ BUTRÓN - JULIACA
C.P. DESARROLLO DE SISTEMAS DE INFORMACIÓN

-- 10 registros en la tabla "talumno"


INSERT​ ​INTO​ talumno ​VALUES​(​1​, ​"Ollanta"​, ​"Fumala"​, ​"AV. Perú #450"​, ​'M'​,
"1980-04-16"​, ​'s'​);
INSERT​ ​INTO​ talumno ​VALUES​(​2​, ​"Maria"​, ​"Panza"​, ​"Av. Fria #017"​, ​'F'​,
"2001-09-04"​, ​'s'​);
INSERT​ ​INTO​ talumno ​VALUES​(​3​, ​"Juan"​, ​"Beruan"​, ​"AV. Samarro #220"​, ​'M'​,
"1999-12-25"​, ​'s'​);
INSERT​ ​INTO​ talumno ​VALUES​(​4​, ​"Ana"​, ​"Colmena"​, ​"AV. Selva alegre #001"​, ​'F'​,
"2000-04-16"​, ​'s'​);
INSERT​ ​INTO​ talumno ​VALUES​(​5​, ​"Avon"​, ​"Fake"​, ​"Av. Cielo S/n"​, ​'F'​, ​"1998-01-20"​,
's'​);
INSERT​ ​INTO​ talumno ​VALUES​(​6​, ​"Marco"​, ​"Historia"​, ​"Jr. Tiempo #2000"​, ​'M'​,
"2016-07-06"​, ​'s'​);
INSERT​ ​INTO​ talumno ​VALUES​(​7​, ​"Jaime"​, ​"Bayly"​, ​"Jr. Manuel NB #150"​, ​'M'​,
"2004-05-17"​, ​'s'​);
INSERT​ ​INTO​ talumno ​VALUES​(​8​, ​"Isabell"​, ​"Pantoja"​, ​"AV. España #756"​, ​'F'​,
"2001-02-26"​, ​'s'​);
INSERT​ ​INTO​ talumno ​VALUES​(​9​, ​"Iván"​, ​"Yvienen"​, ​"AV. Los pinos #199"​, ​'M'​,
"2015-10-16"​, ​'s'​);
INSERT​ ​INTO​ talumno ​VALUES​(​10​, ​"Nadine"​, ​"Heredia"​, ​"AV. Camote #5.10"​, ​'F'​,
"2002-07-28"​, ​'s'​);
INSERT​ ​INTO​ talumno ​VALUES​(​11​, ​"Paquete"​, ​"Camote"​, ​"AV. Fato #5.10"​, ​'M'​,
"2002-07-29"​, ​'n'​);
-- Matriculando alumnos
INSERT​ ​INTO​ tmatricula() ​VALUES​(​"doc_001"​, ​1​, ​1​, ​'2018-03-01'​, ​150​, ​'s'​);
INSERT​ ​INTO​ tmatricula() ​VALUES​(​"doc_002"​, ​2​, ​4​, ​'2018-03-01'​, ​150​, ​'s'​);
INSERT​ ​INTO​ tmatricula() ​VALUES​(​"doc_003"​, ​3​, ​1​, ​'2018-03-01'​, ​150​, ​'s'​);
INSERT​ ​INTO​ tmatricula() ​VALUES​(​"doc_004"​, ​4​, ​4​, ​'2018-03-02'​, ​150​, ​'s'​);
INSERT​ ​INTO​ tmatricula() ​VALUES​(​"doc_005"​, ​5​, ​4​, ​'2018-03-02'​, ​150​, ​'s'​);
INSERT​ ​INTO​ tmatricula() ​VALUES​(​"doc_006"​, ​6​, ​1​, ​'2018-03-03'​, ​150​, ​'s'​);
INSERT​ ​INTO​ tmatricula() ​VALUES​(​"doc_007"​, ​7​, ​1​, ​'2018-03-03'​, ​150​, ​'s'​);
INSERT​ ​INTO​ tmatricula() ​VALUES​(​"doc_008"​, ​8​, ​9​, ​'2018-03-03'​, ​150​, ​'s'​);
INSERT​ ​INTO​ tmatricula() ​VALUES​(​"doc_009"​, ​9​, ​9​, ​'2018-03-04'​, ​150​, ​'s'​);
INSERT​ ​INTO​ tmatricula() ​VALUES​(​"doc_0010"​, ​10​, ​9​, ​'2018-03-04'​, ​150​, ​'s'​);
INSERT​ ​INTO​ tmatricula() ​VALUES​(​"doc_0011"​, ​11​, ​9​, ​'2018-03-04'​, ​150​, ​'n'​);
IEST MANUEL NUÑEZ BUTRÓN - JULIACA
C.P. DESARROLLO DE SISTEMAS DE INFORMACIÓN

-- 3.- Seleccione la base de datos "practica10" y anote los comandos SQL que
permiten
-- visualizar los datos de las tablas "tcurso", "talumno"
USE​ practica10;
SELECT​ * ​FROM​ tcurso;
SELECT​ * ​FROM​ talumno;

-- 4.- Implementar una sentencia SQL que permita obtener un listado de cursos y
costos
-- por curso, ordenados de mayor costo a menor costo
SELECT​ desc_curso, costo ​FROM​ tcurso ​ORDER BY​ costo ​DESC​;

-- 5.- Modificar la consulta anterior para visualizar únicamente el nombre del curso y
el costo
SELECT​ desc_curso, costo ​FROM​ tcurso;

-- 6.-Implementar un listado de alumnos en orden alfabético, únicamente se desea


visualizar el nombre y fecha de nacimiento
SELECT​ nom_alumno, fec_nac ​FROM​ talumno ​ORDER BY​ nom_alumno ​ASC​;

-- 7.-Implementar un listado de alumnos ordenados por edad de menor a mayor,


únicamente se desea visualizar el nombre, fecha de nacimiento y estado del alumno
SELECT​ nom_alumno, fec_nac, est_alumno
FROM​ talumno
ORDER BY​ fec_nac ​DESC​;

-- EJERCICIOS SENTENCIA SELECT - FROM - WHERE - ORDER BY


-- 8.-Implementar un listado de cursos en orden alfabético cuyo costo sea mayor a
250 soles.
SELECT​ * ​FROM​ tcurso
WHERE​ costo > ​250​ ​ORDER BY​ desc_curso ​ASC​;

-- 9.- Implementar un listado de alumnos de sexo femenino en orden alfabético


SELECT​ * ​FROM​ talumno
WHERE​ ​LOWER​(sex_alumno) ​LIKE​ ​'f'
ORDER BY​ nom_alumno;

-- 10.- Implementar un listado de cursos donde el número de vacantes sea menor a


20
SELECT​ * ​FROM​ tcurso ​WHERE​ vacante < ​20​;
IEST MANUEL NUÑEZ BUTRÓN - JULIACA
C.P. DESARROLLO DE SISTEMAS DE INFORMACIÓN

-- 11.- Implementar un listado de alumnos mayores a 18 años


SELECT​ * ​FROM​ talumno
WHERE​ ​YEAR​(CURDATE()) - ​YEAR​(fec_nac) >= ​18​;

-- 12.- Implementar un listado de alumnos cuyo nombre tenga una longitud menor a
15 caracteres
SELECT​ * ​FROM​ talumno ​WHERE​ CHAR_LENGTH(nom_alumno) < ​15​;

-- 13.- Implementar un listado de cursos cuyo nombre empiecen en vocal


SELECT​ * ​FROM​ tcurso
WHERE
LOWER​(desc_curso) ​LIKE​ ​'a%'​ ​OR
LOWER​(desc_curso) ​LIKE​ ​'e%'​ ​OR
LOWER​(desc_curso) ​LIKE​ ​'i%'​ ​OR
LOWER​(desc_curso) ​LIKE​ ​'o%'​ ​OR
LOWER​(desc_curso) ​LIKE​ ​'u%'​;

-- 14.- Implementar un listado de alumnos cuyas edades oscilan entre 19 y 20 años


DROP​ VIEW ​IF​ ​EXISTS​ v_1;
CREATE​ VIEW v_1 ​AS
SELECT​ *, TIMESTAMPDIFF(​YEAR​,fec_nac,CURDATE()) ​AS​ ​'edad'
FROM​ talumno;
SELECT​ * ​FROM​ v_1 ​WHERE​ edad BETWEEN ​19​ ​AND​ ​20​;
-- SELECT TIMESTAMPDIFF(MONTH,'2009-05-18','2009-07-29');

-- EJERCICIOS SENTENCIA SELECT - FROM - ORDER BY (MULTITABLA)

-- 15.- Implementar una sentencia SQL que devuelva la siguiente información


-- Fecha Matricula / Nombre de curso / Nro de Documento / Monto / Estado de
Matrícula
SELECT
m.fec_matr ​AS​ ​'Fecha Matricula'​,
c.desc_curso ​AS​ ​'Nombre de curso'​,
m.nro_docum ​AS​ ​'Nro de Documento'​,
m.monto ​AS​ ​'Monto'​,
m.est_mtr ​AS​ ​'Estado de Matricula'
FROM​ tmatricula ​AS​ m
JOIN​ tcurso ​AS​ c ​ON​ m.cod_curso = c.cod_curso;
IEST MANUEL NUÑEZ BUTRÓN - JULIACA
C.P. DESARROLLO DE SISTEMAS DE INFORMACIÓN

-- 16.- Modificar el listado anterior para visualizar únicamente las matrículas


anuladas
SELECT
m.fec_matr ​AS​ ​'Fecha Matricula'​,
c.desc_curso ​AS​ ​'Nombre de curso'​,
m.nro_docum ​AS​ ​'Nro de Documento'​,
m.monto ​AS​ ​'Monto'​,
m.est_mtr ​AS​ ​'Estado de Matricula'
FROM​ tmatricula ​AS​ m
JOIN​ tcurso ​AS​ c ​ON​ m.cod_curso = c.cod_curso
WHERE​ ​LOWER​(m.est_mtr) = ​"n"​;

-- 17.-Modificar el listado para visualizar únicamente las matrículas realizadas el día


04 de enero del 2010
SELECT
m.fec_matr ​AS​ ​'Fecha Matricula'​,
c.desc_curso ​AS​ ​'Nombre de curso'​,
m.nro_docum ​AS​ ​'Nro de Documento'​,
m.monto ​AS​ ​'Monto'​,
m.est_mtr ​AS​ ​'Estado de Matricula'
FROM​ tmatricula ​AS​ m
JOIN​ tcurso ​AS​ c ​ON​ m.cod_curso = c.cod_curso
WHERE​ m.fec_matr = ​'2010-01-04'​;

-- 18.-Modificar el listado anterior para visualizar únicamente las matrículas cuyos


montos sean inferiores a 200 soles
SELECT
m.fec_matr ​AS​ ​'Fecha Matricula'​,
c.desc_curso ​AS​ ​'Nombre de curso'​,
m.nro_docum ​AS​ ​'Nro de Documento'​,
m.monto ​AS​ ​'Monto'​,
m.est_mtr ​AS​ ​'Estado de Matricula'
FROM​ tmatricula ​AS​ m
JOIN​ tcurso ​AS​ c ​ON​ m.cod_curso = c.cod_curso
WHERE​ m.monto < ​200​;
IEST MANUEL NUÑEZ BUTRÓN - JULIACA
C.P. DESARROLLO DE SISTEMAS DE INFORMACIÓN

-- 19.-Implementar una sentencia SQL que devuelva la siguiente información


-- Fecha Matricula / Nombre de alumno / Nro de Documento / Monto / sexo
SELECT
m.fec_matr ​AS​ ​'Fecha Matricula'​,
a.nom_alumno ​AS​ ​'Nombre de alumno'​,
m.nro_docum ​AS​ ​'Nro de Documento'​,
m.monto ​AS​ ​'Monto'​,
a.sex_alumno ​AS​ ​'sexo'
FROM​ tmatricula ​AS​ m
JOIN​ talumno ​AS​ a ​ON​ m.cod_alumno = a.cod_alumno;

-- 20.-Modificar el listado anterior para visualizar únicamente registros de alumnos


de sexo masculinos mayores de 25 años.
DROP​ VIEW ​IF​ ​EXISTS​ v_2;
CREATE​ VIEW v_2 ​AS
SELECT
m.fec_matr ​AS​ ​'Fecha Matricula'​,
a.nom_alumno ​AS​ ​'Nombre de alumno'​,
m.nro_docum ​AS​ ​'Nro de Documento'​,
m.monto ​AS​ ​'Monto'​,
a.sex_alumno ​AS​ ​'sexo'​,
TIMESTAMPDIFF(​YEAR​,fec_nac,CURDATE()) ​AS​ ​'edad'
FROM​ tmatricula ​AS​ m
JOIN​ talumno ​AS​ a ​ON​ m.cod_alumno = a.cod_alumno;
SELECT​ ​`Fecha Matricula`​,​`Nombre de alumno`​,​`Nro de
Documento`​,​`Monto`​,​`sexo`
FROM​ v_2 ​WHERE​ edad > ​25​;
IEST MANUEL NUÑEZ BUTRÓN - JULIACA
C.P. DESARROLLO DE SISTEMAS DE INFORMACIÓN

-- 21.-Modificar el listado anterior para visualizar únicamente registros de alumnos


de sexo femenino cuyas edades oscilan entre 17 y 19
DROP​ VIEW ​IF​ ​EXISTS​ v_2;
CREATE​ VIEW v_2 ​AS
SELECT
m.fec_matr ​AS​ ​'Fecha Matricula'​,
a.nom_alumno ​AS​ ​'Nombre de alumno'​,
m.nro_docum ​AS​ ​'Nro de Documento'​,
m.monto ​AS​ ​'Monto'​,
a.sex_alumno ​AS​ ​'sexo'​,
TIMESTAMPDIFF(​YEAR​,fec_nac,CURDATE()) ​AS​ ​'edad'
FROM​ tmatricula ​AS​ m
JOIN​ talumno ​AS​ a ​ON​ m.cod_alumno = a.cod_alumno;
SELECT​ ​`Fecha Matricula`​,​`Nombre de alumno`​,​`Nro de
Documento`​,​`Monto`​,​`sexo`
FROM​ v_2 ​WHERE​ ​LOWER​(sexo)=​'f'​ ​AND​ edad BETWEEN ​17​ ​AND​ ​19​;

-- 22.-Implementar una sentencia SQL que devuelva la siguiente información


-- Fecha Matricula / Nombre de curso / Nombre alumno / Monto Matrícula / Nro de
Documento
SELECT
m.fec_matr ​AS​ ​'Fecha Matricula'​,
c.desc_curso ​AS​ ​'Nombre de curso'​,
a.nom_alumno ​AS​ ​'Nombre alumno'​,
m.monto ​AS​ ​'Monto Matricula'​,
m.nro_docum ​AS​ ​'Nro de Documento'
FROM​ talumno ​AS​ a
JOIN​ tmatricula ​AS​ m ​ON​ a.cod_alumno=m.cod_alumno
JOIN​ tcurso ​AS​ c ​ON​ m.cod_curso=c.cod_curso;
IEST MANUEL NUÑEZ BUTRÓN - JULIACA
C.P. DESARROLLO DE SISTEMAS DE INFORMACIÓN

-- 23.-Modificar el listado anterior para visualizar únicamente alumnos de sexo


masculino
SELECT
m.fec_matr ​AS​ ​'Fecha Matricula'​,
c.desc_curso ​AS​ ​'Nombre de curso'​,
a.nom_alumno ​AS​ ​'Nombre alumno'​,
m.monto ​AS​ ​'Monto Matricula'​,
m.nro_docum ​AS​ ​'Nro de Documento'
FROM​ talumno ​AS​ a
JOIN​ tmatricula ​AS​ m ​ON​ a.cod_alumno=m.cod_alumno
JOIN​ tcurso ​AS​ c ​ON​ m.cod_curso=c.cod_curso
WHERE​ ​LOWER​(a.sex_alumno)=​'m'​;

-- 24.-Modificar el listado anterior para visualizar únicamente aquellas matrículas


donde el monto registrado sea
-- inferior al costo del curso matriculado
SELECT
m.fec_matr ​AS​ ​'Fecha Matricula'​,
c.desc_curso ​AS​ ​'Nombre de curso'​,
a.nom_alumno ​AS​ ​'Nombre alumno'​,
m.monto ​AS​ ​'Monto Matricula'​,
m.nro_docum ​AS​ ​'Nro de Documento'
FROM​ talumno ​AS​ a
JOIN​ tmatricula ​AS​ m ​ON​ a.cod_alumno=m.cod_alumno
JOIN​ tcurso ​AS​ c ​ON​ m.cod_curso=c.cod_curso
WHERE​ m.monto < c.costo;

-- 25.-Modificar el listado anterior para visualizar únicamente aquellas realizadas el


09 de octubre
SELECT
m.fec_matr ​AS​ ​'Fecha Matricula'​,
c.desc_curso ​AS​ ​'Nombre de curso'​,
a.nom_alumno ​AS​ ​'Nombre alumno'​,
m.monto ​AS​ ​'Monto Matricula'​,
m.nro_docum ​AS​ ​'Nro de Documento'
FROM​ talumno ​AS​ a
JOIN​ tmatricula ​AS​ m ​ON​ a.cod_alumno=m.cod_alumno
JOIN​ tcurso ​AS​ c ​ON​ m.cod_curso=c.cod_curso
IEST MANUEL NUÑEZ BUTRÓN - JULIACA
C.P. DESARROLLO DE SISTEMAS DE INFORMACIÓN

WHERE​ m.fec_matr = ​'2004-10-09'​;

-- EJERCICIOS SENTENCIA SELECT - INTO (TABLAS TEMPORALES-PERMANENTES)

-- 26.-crear una tabla temporal de nombre t_cur_habiles cuyo contenido sea la


relación de cursos
-- cuyo estado sea el valor A.
CREATE​ TEMPORARY ​TABLE​ t_cur_habiles(
cod_curso ​DECIMAL​(​5​,​0​),
desc_curso ​CHAR​(​30​),
costo ​NUMERIC​(​10​,​2​),
est_curso ​CHAR​(​1​),
vacante ​NUMERIC​(​4​,​0​),
​PRIMARY​ ​KEY​(cod_curso)
);
INSERT​ ​INTO​ t_cur_habiles ​SELECT​ * ​FROM​ tcurso
WHERE​ ​UPPER​(est_curso) = ​'A'​;
SELECT​ * ​FROM​ t_cur_habiles;

-- 27.-Crear una tabla temporal de nombre t_mat_alu cuyo contenido sea el


conjunto de registros obtenidos en la pregunta 20
CREATE​ TEMPORARY ​TABLE​ t_mat_alu(
​`Fecha Matricula`​ ​DATE​,
​`Nombre de alumno`​ ​VARCHAR​(​40​),
​`Nro de Documento`​ ​CHAR​(​15​),
​`Monto`​ ​DECIMAL​(​10​,​0​),
​`sexo`​ ​CHAR​(​1​)
);

DROP​ VIEW ​IF​ ​EXISTS​ v_2;


CREATE​ VIEW v_2 ​AS
SELECT
m.fec_matr ​AS​ ​'Fecha Matricula'​,
a.nom_alumno ​AS​ ​'Nombre de alumno'​,
m.nro_docum ​AS​ ​'Nro de Documento'​,
m.monto ​AS​ ​'Monto'​,
a.sex_alumno ​AS​ ​'sexo'​,
TIMESTAMPDIFF(​YEAR​,fec_nac,CURDATE()) ​AS​ ​'edad'
FROM​ tmatricula ​AS​ m
JOIN​ talumno ​AS​ a ​ON​ m.cod_alumno = a.cod_alumno;
IEST MANUEL NUÑEZ BUTRÓN - JULIACA
C.P. DESARROLLO DE SISTEMAS DE INFORMACIÓN

SELECT​ ​`Fecha Matricula`​,​`Nombre de alumno`​,​`Nro de


Documento`​,​`Monto`​,​`sexo`
FROM​ v_2 ​WHERE​ edad > ​25​;

INSERT​ ​INTO​ t_mat_alu


SELECT
`Fecha Matricula`​,
`Nombre de alumno`​,
`Nro de Documento`​,
`Monto`​,
`sexo`​ ​FROM​ v_2;

SELECT​ * ​from​ t_mat_alu;

-- 28.-Crear una tabla permanente de nombre tp_mat_per cuyo contenido sea el


conjunto de registros en la pregunta 25
DROP​ VIEW ​IF​ ​EXISTS​ tp_mat_per;
CREATE​ VIEW tp_mat_per ​AS
SELECT
m.fec_matr ​AS​ ​'Fecha Matricula'​,
c.desc_curso ​AS​ ​'Nombre de curso'​,
a.nom_alumno ​AS​ ​'Nombre alumno'​,
m.monto ​AS​ ​'Monto Matricula'​,
m.nro_docum ​AS​ ​'Nro de Documento'
FROM​ talumno ​AS​ a
JOIN​ tmatricula ​AS​ m ​ON​ a.cod_alumno=m.cod_alumno
JOIN​ tcurso ​AS​ c ​ON​ m.cod_curso=c.cod_curso
WHERE​ m.fec_matr = ​'2018-03-01'​;

-- EJERCICIOS SENTENCIA SELECT - INTO (SUBCONSULTAS)

-- 29.- 30.- 31 .-32


No tengo ejemplos. Los de internet no se entiende.

-- EJERCICIOS SENTENCIA SELECT GROUP BY


-- 33
SELECT​ ​COUNT​(*) ​AS​ ​'Total varones'​ ​FROM​ talumno
WHERE​ ​UPPER​(sex_alumno) = ​'M'​ ​GROUP BY​ sex_alumno;

Vous aimerez peut-être aussi