Pequeños ejercicios de MySQL (solo apto para principiantes, los no principiantes no pueden ingresar)

  Página de inicio personal
: Columnas de la serie de la página de inicio personal: Base de datos MySQL

Jaja, esta es la tarea asignada por nuestro maestro, me pregunto si usarla o no para publicar un blog.

Finalmente lo pensé y lo publicamos, aunque es muy sencillo, puede ser practicado para aquellos amigos que recién están aprendiendo bases de datos. Porque no hay respuesta, no se si es correcto o no, si alguien encuentra un error que lo señale.

 tema:

  1. Verifique el número de estudiante, la clase y el nombre de cada estudiante
  2. Encuentra toda la información sobre el curso.
  3. Consulta qué clases profesionales hay en la base de datos
  4. Consulta información sobre cursos con más de 60 créditos
  5. Consulta el número de alumno, nombre y fecha de nacimiento de los alumnos nacidos en 1986
  6. Consultar el número de alumnos y cursos cuyas puntuaciones están por encima de 80 para tres tareas
  7. Consulta el número de estudiante, el nombre y la clase principal del estudiante de apellido Zhang
  8. Consulta la información de los chicos del grado 05
  9. Consultar identificaciones de estudiantes e identificaciones de cursos sin calificaciones de tareas 

  10. Consulta la puntuación total de la tarea 1 del alumno cuyo número de alumno es 0538

  11. Consulta el número de alumnos que han realizado el curso K001 

  12. Consultar cuantas clases hay en la base de datos

  13. Consulte el número de estudiantes y el puntaje promedio de la tarea 1, el puntaje promedio de la tarea 2 y el puntaje promedio de la tarea 3 para estudiantes que toman tres o más cursos (incluidos 3 cursos)

     

 

 

 

 

 

No importa si los amigos son base 0, mira el siguiente blog y luego haz las preguntas.

 La última base de MySQL en 2022

1. Crea una base de datos

create database  if not exists  db2 ;

 

Ok, la creación es exitosa, luego abrimos la consola 

 

2. Crea la tabla

1. Crea una tabla de estudiantes

analizar:

ID de estudiante: tipo de carácter

nombre: personaje

género: tipo de carácter género es una palabra por lo que varchar(1)

Clase profesional: tipo de personaje

Fecha de nacimiento: hora tipo fecha 

Número de teléfono de contacto: número de teléfono de caracteres con 11 dígitos varchar (11).

 

 

drop table if exists student;
create table student
(
    id     varchar(10) comment '学号',
    name   varchar(10) NOT NULL comment '姓名',
    gender char(1) comment '性别',
    class  varchar(20) comment '专业班级',
    date   date comment '出生日期',
    iphone varchar(11) comment '联系电话'
)
    comment '学生表';

select * from student;

 

2. Crea un horario de clases

 

 

drop table if exists student_course;
create table student_course
(
    course_id     varchar(10)  comment '课程号',
    course_name   varchar(15) comment '课程名',
    course_number double unsigned comment '学分数',
    student_time  int unsigned comment '学时数',
    teacher       varchar(10) comment '任课教师'
)
    comment '课程表';
select *
from student_course;

 

3. Hoja de trabajo del estudiante

 

drop table if exists student_homework;
create table student_homework
(
    course_id  varchar(10) comment '课程号',
    id      varchar(10)    comment '学号',
    homework_1 int comment '作业1成绩',
    homework_2 int comment '作业2成绩',
    homework_3 int comment '作业3成绩'

)
    comment '学生作业表';
select *
from student_homework;

 

3. Agregar datos

Escríbalos uno por uno de acuerdo con los datos de la imagen, woo woo woo

 1. Mesa de estudiante

insert into student
values ('0433', '张艳', '女', '生物04', '1986-9-13', null),
       ('0496', '李越', '男', '电子04', '1984-2-23', '1381290xxxx'),
       ('0529', '赵欣', '男', '会计05', '1984-1-27', '1350222xxxx'),
       ('0531', '张志国', '男', '生物05', '1986-9-10', '1331256xxxx'),
       ('0538', '于兰兰', '女', '生物05', '1984-2-20', '1331200xxxx'),
       ('0591', '王丽丽', '女', '电子05', '1984-3-20', '1332080xxxx'),
       ('0592', '王海强', '男', '电子05', '1986-11-1', null);

 Échale un vistazo:

select * from student;

 

 

2. Horario de clases

 

INSERT INTO student_course
values ('K001', '计算机图形学', 2.5, 40, '胡晶晶'),
       ('K002', '计算机应用基础', 3, 48, '任泉'),
       ('K006', '数据结构', 4, 64, '马跃先'),
       ('M001', '政治经济学', 4, 64, '孔繁新'),
       ('S001', '高等数学', 3, 48, '赵晓尘');

Échale un vistazo:

select *
from student_course;

 

3. Hoja de trabajo del estudiante

 

 

insert into student_homework values
('K001','0433',60,75,75),
('K001','0529',70,70,60),
('K001','0531',70,80,80),
('K001','0591',80,90,90),
('K002','0496',80,80,90),
('K002','0529',70,70,85),
('K002','0531',80,80,80),
('K002','0538',65,75,85),
('K002','0592',75,85,85),
('K006','0531',80,80,90),
('K006','0591',80,80,80),
('M001','0496',70,70,80),
('M001','0591',65,75,75),
('S001','0531',80,80,80),
('S001','0538',60,null,80);

Échale un vistazo:

select *
from student_homework;

 

 

4. Empieza a hacer preguntas

1. Verifique el número de estudiante, la clase y el nombre de cada estudiante

 

select id,class,name from student;

 

2. Consulta toda la información del curso

 

select *
from student_course;

 

 

3. Consulta qué clases profesionales hay en la base de datos

 

select  class from student;

 4. Consultar información de cursos con más de 60 créditos

select course_id,course_name from student_course where student_time>60;

 

 5. Consulta el número de estudiante, nombre y fecha de nacimiento de los estudiantes nacidos en 1986

select id,name,date from student where date>=('1986-1-1') AND date<('1987-1-1');

 

 

 

 6. Pregunte sobre el número de estudiante y el número de curso de los tres puntajes de tarea por encima de 80 puntos

 Al principio usé esta consulta de nuevo:

select * from student_homework where homework_1>80 and homework_2>80 and homework_3>80;

Descubrí que no había nada, así que miré los datos y descubrí que no hay tales datos para tres puntajes de tareas superiores a 80.

Por lo tanto, la pregunta: "Consulta sobre el número de estudiante y número de curso con un puntaje de 80 o más en tres tareas" debe incluir 80 puntos

Entonces, lo modifico:

select * from student_homework where homework_1>=80 and homework_2>=80 and homework_3>=80;

 

 

7. Consulte el número de estudiante, el nombre y la clase principal del estudiante de apellido Zhang

 Ejemplo de error:

Como no he escrito SQL durante cientos de años, en realidad escribí (me abofeteo):

select id,name,class from  student where name = '张%';

select id,name,class from  student where name like '张%';

 

 ​​​​​​​

 

 8. Consultar la información de los niños en el grado 05

 

select * from student where class like '%05' and gender='男';

 

9. Consulte el número de estudiante y el número de curso sin calificaciones de tarea 

 

select id,course_id from student_homework where homework_1 is null or homework_2 is null or homework_3 is null ;

 ​​​​​​​

 

 

 10. Consulta la puntuación total de la tarea 1 del alumno cuyo número de alumno es 0538

 

select sum(homework_1) '总分' from student_homework where id='0538';

11. Consultar el número de alumnos que han realizado el curso K001 como optativo 

 

select count(*) from student_homework where course_id='K001';

 

12. Consulta cuántas clases hay en la base de datos

 

select count(*) from student where class is not null ;

 

13. Consulte el número de estudiantes y el puntaje promedio de la Tarea 1, el puntaje promedio de la Tarea 2 y el puntaje promedio de la Tarea 3 que han tomado tres o más cursos (incluidos 3 cursos)

select student.id, avg(homework_1), avg(homework_2), avg(homework_3)
from student
         left join student_homework on student.id = student_homework.id
group by student.id
having count(course_id) >= 3;

 

 

Supongo que te gusta

Origin blog.csdn.net/Javascript_tsj/article/details/124350331
Recomendado
Clasificación