Reto 2

BD Aplicacion_cadena


  • tabla Discente
  •           carnet
  •           nombre
  •  

  • 4 primeros dígitos año
  • 5 digito numero de semestre
  • del digito 6 al 9 es el código del carnet
  • Los 3 últimos dígitos es la carrera
  • Realizar: comando Substr

    a. Consulte los discentes que estudian sistemas (075, 088)  

    select carnet, nombre from discente where substr(carnet, 10, 3) in ('075', '088');



    ----------------------------------------------------------------------------------------------------------------------------------------

    b. Cuente los discentes que están matriculados en ingeniería (075)

    select count(*) from discente where substr(carnet, 10, 3) = "075"; 

    Si queremos consular no por la cantidad sino mostrar el carnet y el nombre cambiamos el count(*) por el carnet, nombre.

    select carnet, nombre from discente where substr(carnet, 10, 3) = "075";

    -----------------------------------------------------------------------------------------------------------------------------

    c. Consulte los nombres de los discentes cuyos caracteres no excedan de 25

    select nombre from discente where length(nombre) <= 25;


    d. Cuántos discentes no están matriculados en tecnología en sistemas

    select count(*) from discente where substr(carnet, 11, 2) not in ('075', '088'); 

    e. Cuente los discentes que iniciaron sus estudios en el año 2012

    select count(*) from discente where substr(carnet, 1, 4) = "2012";

    f. Cuántos discentes iniciaron sus estudios en el primer semestre del año

    select count(*) from discente where substr(carnet, 5, 1) = "1"; 

    g. Cuente los alumnos que se matricularon antes del 2013

    select count(*) from discente where substr(carnet, 1, 4) < "2013"; 

    h. Ordene los discentes por el año en que se matricularon

    select * from discente order by substr(carnet, 1, 4); 

    i. Liste los discentes de ingeniería de sistemas que estén matriculados antes del 2012 en el segundo semestre del año

    select * from discente where substr(carnet, 10, 3) = "075" and substr(carnet, 1, 4) < "2012" and substr(carnet, 5, 1) = "2"; 

    j. Consulte el carnet menor de los discentes que no son de sistemas (solo incluya el código)

    select min(carnet) from discente where substr(carnet, 10, 3) not in ('075', '088'); 

    k. Los carnet terminados en 088 tienen descuento del 5%, de lo contrario pagan todo el valor de la matrícula

    select carnet, nombre, if(carnet like '%088', '5% descuento', 'no descuento') as descuento from discente; 

    l. Si el carnet termina en 073, el estudiante es de contaduría, de lo contrario es de otra carrera a fin

    select carnet, nombre, if(substr(carnet, 10, 3) = "073", "contaduría", "otra carrera") as carrera from discente; 

    m. Liste a todos los estudiantes que pertenecen a la carrera de ingeniería de sistemas, cuyo nombre tenga en cualquier lado la letra "i"

    select carnet, nombre from discente where substr(carnet, 10, 3) = "075" and nombre like "%i%"; 

    Todos los derechos reservados | Motos As 2025
    Creado con Webnode Cookies
    CREADO CON WEBNODE ¿Te gusta esta página web? La tuya puede estar online hoy mismo. ¿Te gusta esta página web? La tuya puede estar online hoy mismo. Describe tu idea y la IA creará el primer borrador. Sin programar y gratis al empezar.