首页 >

mysql检索学生选修课程 |mysql 先分组后统计

mysql 5.5 jdbc maven,mysql数据返回错误,mysql分库分表业务,mysql表中插入属性,mysql 加索引 太慢,mysql 先分组后统计mysql检索学生选修课程 |mysql 先分组后统计

首先,大家需要创建一个包含学生、课程和选课记录的数据库。以下是创建数据库及表的SQL代码:

CREATE DATABASE student;
USE student;
CREATE TABLE course(
id INT NOT NULL AUTO_INCREMENT,
name VARCHAR(20) NOT NULL,
PRIMARY KEY ( id )
);
CREATE TABLE student(
student_id INT NOT NULL AUTO_INCREMENT,
name VARCHAR(20) NOT NULL,
PRIMARY KEY ( student_id )
);
CREATE TABLE select_course(
id INT NOT NULL AUTO_INCREMENT,
student_id INT NOT NULL,
course_id INT NOT NULL,
PRIMARY KEY ( id ),
INDEX ( student_id ),
INDEX ( course_id )
);

上述代码中,大家创建了三个表。其中,course表用于存储课程信息,student表用于存储学生信息,select_course表用于存储选课记录。

接下来,大家可以向这些表中插入数据。以下是向course表中插入数据的SQL代码:

INSERT INTO course ( id, name ) VALUES ( 1, '数学' );
INSERT INTO course ( id, name ) VALUES ( 2, '英语' );
INSERT INTO course ( id, name ) VALUES ( 3, '物理' );

类似的,大家可以向student表中插入学生数据:

INSERT INTO student ( student_id, name ) VALUES ( 1, '张三' );
INSERT INTO student ( student_id, name ) VALUES ( 2, '李四' );
INSERT INTO student ( student_id, name ) VALUES ( 3, '王五' );

最后,大家可以向select_course表中插入选课数据。以下是向该表中插入数据的SQL代码:

INSERT INTO select_course ( id, student_id, course_id ) VALUES ( 1, 1, 1 );
INSERT INTO select_course ( id, student_id, course_id ) VALUES ( 2, 1, 2 );
INSERT INTO select_course ( id, student_id, course_id ) VALUES ( 3, 2, 1 );
INSERT INTO select_course ( id, student_id, course_id ) VALUES ( 4, 3, 3 );

在以上数据的基础上,大家可以使用以下SQL代码检索学生选修课程的信息:

SELECT student.name, course.name FROM student INNER JOIN select_course ON student.student_id = select_course.student_id INNER JOIN course ON select_course.course_id = course.id;

通过以上SQL代码,大家可以得到以下结果:

+--------+-------+
| name   | name  |
+--------+-------+
| 张三   | 数学  |
| 张三   | 英语  |
| 李四   | 数学  |
| 王五   | 物理  |
+--------+-------+

以上结果显示了每个学生选修的课程名称。

以上就是使用MySQL检索学生选修课程的方法。如有需要,您可以根据实际情况进行更改。


mysql检索学生选修课程 |mysql 先分组后统计
  • Python如何将文件导入到MySQL数据库中 |控制台查看mysql版本
  • Python如何将文件导入到MySQL数据库中 |控制台查看mysql版本 | Python如何将文件导入到MySQL数据库中 |控制台查看mysql版本 ...

    mysql检索学生选修课程 |mysql 先分组后统计
  • mysql本地终端2种表示方法 |mysql shading
  • mysql本地终端2种表示方法 |mysql shading | mysql本地终端2种表示方法 |mysql shading ...

    mysql检索学生选修课程 |mysql 先分组后统计
  • mysql页与页之间如何跳转? |ecshop mysql密码
  • mysql页与页之间如何跳转? |ecshop mysql密码 | mysql页与页之间如何跳转? |ecshop mysql密码 ...