1、首先在电脑中打开sql,在外层查询中写上Select From S查询出学生信息,如下图所示。
2、然后,再以同样的方法找出SC选修表,如下图所示。
3、此时,就可以在这里利用等值连接将S和SC表连接,如下图所示。
4、但是,因为这是不同层级的查询,因此需要Exists谓词将他们连接。
5、运行后,就可以看到这样的结果,如下图所示就完成了。
我理解楼主是要一个数据库的设计方案,其中包括相关SQL、逻辑关系、业务处理方法。
(Ps:偶平时工作就是做设计和开发的,以下所有SQL经过oracle测试)
学生表 Student:
学生ID(主键)、学生代码、学生名称、备用字段1、备用字段2、备用字段3;
课程表 Class:
课程ID(主键)、课程代码、课程名称、备用字段1、备用字段2、备用字段3;
MAPPING表 StuClass:
主键ID、学生ID、课程ID。
-- Create table student
create table student
(
studentid number(22),
studentcode varchar2(16),
studentname varchar2(16),
attr1 varchar2(64),
attr2 varchar2(64),
attr3 varchar2(64)
);
-- Create primary key constraints
alter table student
add constraint student_pk primary key (STUDENTID);
-- Create table class
create table class
(
classid number(22),
classcode varchar2(16),
classname varchar2(16),
attr1 varchar2(64),
attr2 varchar2(64),
attr3 varchar2(64)
);
-- Create primary key constraints
alter table class
add constraint class_pk primary key (CLASSID);
-- Create table stuclass
create table stuclass
(
stuclassid number(22),
studentid varchar2(16),
classid varchar2(16)
);
-- Create primary key constraints
alter table stuclass
add constraint stuclass_pk primary key (STUCLASSID);
系统初始化时录入主数据:学生信息、课程信息。
APP做业务处理:
1、学生选课程(单选或多选):insert into stuclass values(,,);
2、查看所有学生选择的所有课程:
select sstudentcode,sstudentname,cclasscode,cclassname
from student s left join stuclass sc on sstudentid=scstudentid
left join class c on scclassid=cclassid order by sstudentid
(如查看某些学生或某个学生选择了哪些课程,可在后面加where条件)
3、查看所有课程有哪些学生选择:
select cclasscode,cclassname,sstudentcode,sstudentname
from class c left join stuclass sc on scclassid=cclassid
left join student s on sstudentid=scstudentid order by cclassid
(如查查看某些课程或某个课程有哪些学生选择,可在后面加where条件)
数据库管理系统常见的数据模型有层次模型,网状模型和语义模型。在关系模型基础上增加全新的数据构造器和数据处理原语,用来表达复杂的结构和丰富的语义的一类新的数据模型。
荣誉分值、综合分值等计算、统计和分析。实现自动排名、审计奖学金,公示奖学金评审结果等功能。困难生认定管理:学生申请,教师审批,申请发放各项资助。
有助于加强学校对困难生的服务和管理,简化困难生资助申请的繁琐过程,给困难生提供更加简洁、方便的服务渠道,确保资助准确、及时的发放。勤工岗位申请管理:岗位设定、学生申请、教师审批。提高了勤工岗位服务和管理的效率性和科学性。
科技项目申报管理:科技项目发布、学生申请、教师审批。实现了对学生科技项目执行情况的监督、检查、项目验收鉴定和经费管理等工作流程化、规范化的管理。
就业信息管理:以“服务学生就业”理念为依托,构建一个针对性强,实时、方便的数据采集、分析和管理平台,逐步实现对学生就业信息的更好管理,提高信息化管理水平 , 为相关决策提供支持。
CREATE
TABLE
学生表
(学号
VARCHAR(12)
NOT
NULL,
姓名
VARCHAR(20)
NOT
NULL,
性别
VARCHAR(10)
NOT
NULL,
年龄
INT
CHECK(年龄>=0
AND
年龄<=120),
所在系
VARCHAR(20)
NOT
NULL,
PRIMARY
KEY
(学号)
)
CREATE
TABLE
课程表
(课程号
VARCHAR(12)
NOT
NULL,
课程名
VARCHAR(20)
NOT
NULL,
先修课号
VARCHAR(20)
NOT
NULL,
学分
INT
CHECK(学分>0
AND
学分<=20),
PRIMARY
KEY
(课程号)
)
CREATE
TABLE
成绩表
(学号
VARCHAR(12)
NOT
NULL,
课程号
VARCHAR(12)
NOT
NULL,
成绩
REAL
CHECK(成绩>=0
AND
成绩<=100),
PRIMARY
KEY
(学号,课程号),
FOREIGN
KEY
(学号)
REFERENCES
学生表
(学号),
FOREIGN
KEY
(课程号)
REFERENCES
课程表(课程号)
)
以上就是关于如何使用SQL查询数据库的学生选修课信息全部的内容,包括:如何使用SQL查询数据库的学生选修课信息、求Oracle设计的学生选课管理系统的数据库(包含SQL语句)、学生选课管理系统是一个什么模型的数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)