Cadenas
BD Aplicacion_cadena
tabla Discente
carnet
nombre
4 primeros digitos año
5 digito numero de semestre
del digito 6 al 9 es el codigo del carnet
Los 3 últimos digitos es la carrera
Registros////////////////////////////////////////////////////////////////////////////////////////////////
201126012075 ALVARADO RESTREPO ESTEBAN
201110011075 ARENAS TAMAYO JOAN SEBASTIAN
200910005075 BEDOYA BEDOYA DIEGO ALEXANDER
201020006088 CARDONA CHICA DIEGO FERNANDO
201116027075 CARMONA TABORDA JOHN ALEXANDER
201320010075 CORREA CORREA ANGELICA MARIA
201110016075 GOMEZ GOMEZ JULIO CESAR
201110022075 HURTADO TAMAYO CARLOS ESTIBEN
201220002075 LONDOÑO FONNEGRA JHONNY ALEXANDER
201116037075 MANYOMA GARCIA HENSLLY
201110020075 MARTINEZ VALENCIA JHON DENNIS
201320021075 PEREZ YEISON FABIAN
201220004088 SALAZAR BUSTAMANTE MERY JOHANNA
201212005075 TORRES TONOCOLIA JENNIFER JULIETH
201213002088 ZULUAGA LONDOÑO ANGELA CRISTINA
201120011088 ASPRILLA LEUDO YILMAR
201324002075 ASPRILLA MENA WALNHER YHAMYD
201223000088 CALLE PUERTA LILIANA MARIA
201210009088 COLLAZO PATIÑO ALEX FERNEY
201224000088 GRANADA MESA VICTOR ALONSO
201210005088 HERRERA CARDONA JUAN DANIEL
201220016088 JARAMILLO CARDONA MARLON ALEXANDER
201210043088 MARTINEZ VALENCIA JHONATAN ARLEY
201210009075 MOSQUERA PALACIOS NELSON JHAIR
201210007075 OCAMPO NARANJO LUIS FELIPE
201210022088 OROZCO CARMONA DIDIER
201222000075 RAMIREZ MONTOYA ANDRES
201210012088 SALDARRIAGA ARAQUE ANDRES FELIPE
201010002075 VANEGAS AGUDELO ETHAN ARLEY
200910012075 ALZATE CARVAJAL RAFAEL ALEXANDER
200910005075 BEDOYA BEDOYA DIEGO ALEXANDER
201210030075 CAICEDO CABEZAS JOHE ALDREITH
201126016075 MESA ROLDAN JAVIER ALBERTO
201213000088 MONTOYA HENAO MARCELA
201312004075 MUNERA CARDENAS JOHN JAIRO
201320021075 PEREZ YEISON FABIAN
201220022088 RAMIREZ MESA JULIAN ALBERTO
201313006075 TEJADA CASTRO ANDRÉS FELIPE
201212005075 TORRES TONOCOLIA JENNIFER JULIETH
201220004075 VALLEJO MAZO PAOLA ANDREA
200920001075 VARGAS ARTEAGA ALEXIS ALBERTO
201212003075 ZAPATA ZUÑIGA ADRIANA PATRICIA
201222005075 ANDRADE RIVERA JOHAN ALEXIS
201310026075 ANGARITA TORRES IRAMA
201312007075 CARO BEDOYA WALTER DAVIDSON
201313001075 CUESTA CUERVO YURY LORENA
201220006075 ECHAVARRIA RODRIGUEZ SANDRA MARIA
201310008075 GIRALDO VERGARA YOLANDA MILENA
201110017088 GRAJALES MUÑOZ VICTOR CAMILO
201110005088 NARANJO DE LOS RIOS MONICA MARIA
201214004075 RADA RODRIGUEZ SILVIO SEGUNDO
201223003075 SERNA ESCOBAR JUAN CARLOS
201222004075 VEGA MAZO OMAIRA MARIA
200820040075 WALTON MAYA NATALIA MARIA
200920009075 ATEHORTUA LONDOÑO JUAN CAMILO
201220003075 BLANDON LONDOÑO CRISTIAN MAURICIO
201020006088 CARDONA CHICA DIEGO FERNANDO
201010005075 CASTRO HERNANDEZ MARIA CRISTINA
201110019088 CASTRO NAVIA KARINA
201020003088 CEBALLOS BETANCUR DANIEL STEVEN
201110017088 GRAJALES MUÑOZ VICTOR CAMILO
201222003075 RESTREPO GOMEZ RUBEN FERNANDO
201110034075 RODRIGUEZ CARDONA YENY ANDREA
201310016075 VALDERRAMA MAHECHA DIEGO ALEJANDRO
201222007073 AREIZA VERA JOHN FREDY
201110058073 BURGOS ECHEVERRY LISBETH
201222008073 DOMINGUEZ GOMEZ LIBIA ESTELA
201314005073 DURANGO RODRIGUEZ JESUS HUMBEIRO
200910069073 FUENTES FLOREZ JESSICA VIVIANA
201312008075 JARAMILLO LUIS FERNANDO
201120004073 LOPERA GUTIERREZ ALBA MIREYLLE
201120036073 MENA ARTEAGA JUAN NORBERTO
201120028073 OSPINA DAVID DORA ALBA
201214004075 RADA RODRIGUEZ SILVIO SEGUNDO
200820036073 RIOS QUINCHIA TATIANA
200920013073 SILVA ARIAS NANCY CRISTINA
201312001088 VARELA BEDOYA DAISSY ANDREA
201120030073 VELASQUEZ ACEVEDO BIVIANA ELIZABETH
201324013073 VELEZ DIANA MARCELA
200910007073 ZAPATA VALENCIA OLGA LUCIA
201320024070 BOLAÑO MADERA MAIRA MIRITH
201320016070 GRISALES ISAZA PAOLA ANDREA
201320005086 GUTÍERREZ SEGURO BEATRIZ
201320005073 HOYOS HENAO JORGE NILTON
201320002073 LEON ESTEVEZ DEISY YOLIMA
201320008060 LONDOÑO MUÑOZ MARISOL
201320003072 LOPEZ BLANDON LUISA FERNANDA
201320011073 LOPEZ JIMENEZ LILLYAM DE JESUS
201320009070 MAZO MARIN ANA MARIA
201320011059 MUÑOZ LOPEZ JONATHATAN FELIPE
201320013074 MURILLO MURILLO VIDAL CAMILO
201320004072 PATIÑO FLOREZ MARIA ANDREA
201320008059 RODRIGUEZ VILLA YOHAN SEBASTIAN
201320006073 RUIZ RIVERA ISABEL
201320003070 TEJADA AGUIRRE ZAIRA CRISTINA
201320013070 TIECK MACIAS NICOLAS
201320006074 YEPES HENAO MONICA
Realizar: comando Substr
a. Consulte los discentes que estudian sistemas (075, 088)
b. Cuente los discentes que están matriculados en ingeniería (075)
c. Consulte los nombres de los discentes cuyos caracteres no excedan de 25.
d. Cuantos discentes no están matriculados en tecnología en sistemas.
e. Cuente los discentes que iniciaron sus estudios en el año 2012.
f. Cuantos discentes iniciaron sus estudios en el primer semestre del año.
g. cuente los alumnos que se matricularon antes del 2013.+++++++++++++++++++++++++++++++
h. Ordene los discentes por el año en que se matricularon.++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
i. Liste los discentes de ingeniería de sistemas que estén matriculados antes del 2012 en el segundo semestre del año.+++++++++++++++++++++++++++++++++++++++++++
j. Consulte el carnet menor de los discentes que no son de sistemas (solo incluya el codigo)++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
k. Los carnet terminados en 088 tienen descuento del 5% de lo contrario pagan todo el valor de la matricula.++++++++++++++++
l. Si el carnet termina en 073 el estudiante es de contaduría, de lo contrario es de otra carrera a fin.*************************************
m. Liste a todos los estudiantes que pertenecen a la carrera de ingeniería de sistemas, cuyo nombre tengan en cualquier lado la letra i.+++++++++++++++++++++++++
consultar discentes que estudian Sistemas (075, 088)
¿Qué desea mostrar?
El listado completo de estudiantes que pertenecen a las carreras de Sistemas, identificados por los códigos 075 y 088 en los últimos 3 dígitos de su carnet.
Los campos a mostrar son:
Carnet (identificación del estudiante)
Nombre (nombre completo del discente)
Tablas involucradas
Discente: Contiene toda la información de los estudiantes
Relaciones
No se requieren relaciones con otras tablas para esta consulta
Funciones a utilizar
SUBSTR():
IN:
SELECT:
WHERE:
Código SQL
select count(*) as Estudiantes from Discente where substr(carnet,10,3) in ('075', '088');
Análisis para contar discentes matriculados en Ingeniería (075)
¿Qué desea mostrar?
El número total de estudiantes matriculados en carreras de Ingeniería, identificados por el código 075 en los últimos 3 dígitos del carnet.
Campo a mostrar:
Ingeniería (conteo total de estudiantes).
Tablas involucradas:
Discente (contiene los registros de estudiantes).
Relaciones:
No se requieren relaciones con otras tablas.
Funciones utilizadas:
COUNT(*):
SUBSTR():
IN:
Código SQL:
select count(*) as Ingenieria from DISCENTE where substr(carnet,10,3) in ('075');
consultar nombres de discentes con menos de 25 caracteres
¿Qué deseamos mostrar?
Los nombres completos de los estudiantes cuya longitud no exceda los 25 caracteres.
Campo a mostrar:
nombre (nombre completo del discente).
Tabla involucrada
Discente (contiene los registros de estudiantes).
Relaciones
No se requieren relaciones con otras tables.
Funciones utilizadas
CHARACTER_LENGTH():
WHERE:
SELECT:
Código SQL
select nombre from discente where character_length(nombre) < 25;
discentes no matriculados en Tecnología en Sistemas (088)
¿Qué deseamos mostrar?
El número total de estudiantes que NO están matriculados en Tecnología en Sistemas (código 088).
Campo a mostrar:
Conteo total de discentes no matriculados en Tecnología en Sistemas
Tabla involucrada:
Discente (contiene los registros de estudiantes)
Relaciones:
No se requieren relaciones con otras tablas
Funciones utilizadas:
COUNT(*):
SUBSTR():
NOT IN:
WHERE:
Código SQL:
SELECT COUNT(*) AS No_Tecnologia_Sistemas
FROM Discente
WHERE SUBSTR(carnet, 10, 3) NOT IN ('088');
Análisis para contar discentes que iniciaron estudios en 2012
¿Qué deseamos mostrar?
El número total de estudiantes que comenzaron sus estudios en el año 2012, identificados por los primeros dígitos de su carnet.
Tabla involucrada:
Discente (tabla principal con registros de estudiantes).
Relaciones:
No se requieren relaciones con otras tablas.
Funciones utilizadas:
SUBSTR():
COUNT():
WHERE:
Código SQL:
SELECT COUNT(*) AS Comenzaron_2012
FROM Discente
WHERE SUBSTR(carnet, 1, 4) = '2012';
discentes que iniciaron estudios en primer semestre
¿Qué deseamos mostrar?
El número total de estudiantes que comenzaron sus estudios en el primer semestre de cualquier año, identificados por el quinto dígito de su carnet.
Campo a mostrar:
Total_primer_semestre (conteo de estudiantes del primer semestre)
Tabla involucrada:
Discente (tabla principal con registros de estudiantes)
Relaciones:
No se requieren relaciones con otras tablas
Funciones utilizadas:
SUBSTR():
COUNT():
WHERE:
Código SQL:
SELECT COUNT(*) AS Total_primer_semestre
FROM Discente
WHERE SUBSTR(carnet, 5, 1) = '1';
alumnos matriculados antes del 2013
¿Qué deseamos mostrar?
El número total de estudiantes que iniciaron sus estudios antes del año 2013, identificados por los primeros dígitos de su carnet.
Campo a mostrar:
Total_antes_2013 (conteo de estudiantes matriculados antes de 2013).
Tabla involucrada:
Discente (tabla principal de estudiantes).
Relaciones:
No se requieren relaciones con otras tablas.
Funciones utilizadas:
SUBSTR():
COUNT():
WHERE:
Código SQL:
SELECT COUNT(*) AS Total_antes_2013
FROM Discente
WHERE SUBSTR(carnet, 1, 4) < '2013';
ordenar discentes por año de matrícula
¿Qué deseamos mostrar?
El listado completo de estudiantes ordenados cronológicamente según su año de matrícula, mostrando su información básica.
Campos a mostrar:
carnet
nombre
año_matricula
Tabla involucrada:
Discente
Relaciones:
No se requieren relaciones con otras tablas.
Funciones utilizadas:
SUBSTR():
ORDER BY:
SELECT:
Código SQL:
SELECT carnet, nombre, SUBSTR(carnet, 1, 4) AS año_matricula -- Opcional: muestra el año extraídoFROM DiscenteORDER BY SUBSTR(carnet, 1, 4); -- Ordena por año ascendente (más antiguo a más reciente)
listar discentes de Ingeniería de Sistemas matriculados antes de 2012 en segundo semestre
¿Qué deseamos mostrar?
El listado de estudiantes de Ingeniería de Sistemas que cumplen:
Matriculados antes de 2012
Ingresaron en segundo semestre
Ordenados por año de matrícula
Campos a mostrar:
carnet
nombre
Tabla involucrada:
Discente
Relaciones:
No se requieren relaciones con otras tablas
Funciones utilizadas:
SUBSTR():
WHERE:
ORDER BY:
Código SQL:
SELECT carnet, nombre
FROM Discente
WHERE SUBSTR(carnet, 10, 3) = '075'
AND SUBSTR(carnet, 1, 4) < '2012'
AND SUBSTR(carnet, 5, 1) = '2'
ORDER BY SUBSTR(carnet, 1, 4);
consultar el carnet menor de discentes que no son de Sistemas
¿Qué deseamos mostrar?
El número de carnet con el valor más bajo (menor numéricamente) entre los estudiantes que no pertenecen a carreras de Sistemas (excluyendo códigos 075 y 088).
Campo a mostrar:
MIN(carnet)
Tabla involucrada:
Discente
Relaciones:
No se requieren relaciones con otras tablas.
Funciones utilizadas:
MIN():
SUBSTR():
NOT IN:
WHERE:
Código SQL:
SELECT MIN(carnet)
FROM Discente
WHERE SUBSTR(carnet, 10, 3) NOT IN ('075', '088');
calcular el valor de matrícula con descuento del 5% para carnets terminados en 088
¿Qué deseamos mostrar?
El valor de matrícula que debe pagar cada estudiante, aplicando:
5% de descuento si su carnet termina en 088 (Tecnología en Sistemas)
Valor completo para todos los demás casos
Campos a mostrar:
carnet
nombre
valor_a_pagar
Tabla involucrada:
Discente (tabla principal de estudiantes)
Relaciones:
No se requieren relaciones con otras tablas.
Funciones utilizadas:
SUBSTR():
CASE WHEN THEN ELSE END:
Calcula el 95% del valor original (5% de descuento)
Código SQL:
SELECT
carnet,
nombre,
CASE
WHEN SUBSTR(carnet, 10, 3) = '088' THEN 500000 * 0.95 -- Valor fijo con descuento
ELSE 500000 -- Valor fijo sin descuento
END AS valor_a_pagar
FROM Discente;
listar discentes de Contaduría que ingresaron en el primer semestre
¿Qué deseamos mostrar?El siguiente listado de estudiantes que cumplen las condiciones:
Son de la carrera de Contaduría ( segúnen el carnet )(según el código '073'en el carnet)
Ingresaron en el primer semestreen la posición 5 del carnet )(según el carácter '1'en la posición 5 del carnet)
Ordenados por año de matrícula ( primeros 4 dígitos del carnet )(primeros 4 dígitos del carnet)
Son de la carrera de Contaduría ( segúnen el carnet )(según el código '073'en el carnet)
Ingresaron en el primer semestreen la posición 5 del carnet )(según el carácter '1'en la posición 5 del carnet)
Ordenados por año de matrícula ( primeros 4 dígitos del carnet )(primeros 4 dígitos del carnet)
Campos para mostrar:carnet(identificación del estudiante)
nombre(nombre completo)
carnet(identificación del estudiante)
nombre(nombre completo)
Tabla involucrada:Discente
Discente
Relaciones:No se requieren relaciones con otras tablas
No se requieren relaciones con otras tablas
Funciones utilizadas:SUBSTR():
SUBSTR(carnet, 10, 3)para extraer el código de la carrera
SUBSTR(carnet, 5, 1)para extraer el semestre de ingreso
SUBSTR(carnet, 1, 4)para extraer el año de matrícula (y ordenar)
WHERE: Para aplicar condiciones de carrera y semestre
ORDER BY: Para ordenar los resultados por año de matrícula
SUBSTR():
SUBSTR(carnet, 10, 3)para extraer el código de la carrera
SUBSTR(carnet, 5, 1)para extraer el semestre de ingreso
SUBSTR(carnet, 1, 4)para extraer el año de matrícula (y ordenar)
WHERE: Para aplicar condiciones de carrera y semestre
ORDER BY: Para ordenar los resultados por año de matrícula