使用sql创建一个成绩表sscore,字段有:学号(sno),专业(spf),姓名(snm),出生年月日(sbt),学期(stm),数学(smt),英语(sen),数据库(sdb). (12分)
时间: 2023-10-30 12:36:30 浏览: 15
CREATE TABLE sscore (
sno VARCHAR(10) NOT NULL,
spf VARCHAR(20),
snm VARCHAR(20),
sbt DATE,
stm VARCHAR(10),
smt FLOAT,
sen FLOAT,
sdb FLOAT,
PRIMARY KEY (sno, stm)
);
相关问题
写一个sql语句,成绩表sscore: 学生ID、科目sskc、当前科 目的单科分数ssfs 学生表sstudent: 学生ID、班级ssclass. 年龄ssage、所在城市city 请查询各个城市总分大于500的学生数 (注意只能用一个sql表示)
请看以下 SQL 语句:
SELECT COUNT(DISTINCT sstudent.学生ID)
FROM sstudent
JOIN sscore ON sstudent.学生ID = sscore.学生ID
GROUP BY sstudent.city
HAVING SUM(sscore.ssfs) > 500;
创建名为V_S_ZhiYu的视图,统计每个学生的智育分,显示学号、姓名、专业、年级和智育分。其中智育分为:每门课成绩乘以学分之和,再除以总学分
好的,我可以为您提供一份SQL语句来创建名为V_S_ZhiYu的视图,视图将显示每个学生的智育分,包括学号、姓名、专业、年级和智育分。智育分的计算方式是:每门课成绩乘以学分之和,再除以总学分。
以下是SQL语句:
```
CREATE VIEW V_S_ZhiYu AS
SELECT S.Sno, S.Sname, S.Sdept, S.Sgrade, SUM(SC.Sscore * C.Ccredit) / SUM(C.Ccredit) AS ZhiYuScore
FROM Student S, SC, Course C
WHERE S.Sno = SC.Sno AND SC.Cno = C.Cno
GROUP BY S.Sno, S.Sname, S.Sdept, S.Sgrade;
```
这个视图将对学生表、成绩表和课程表进行关联,并按照学生的学号、姓名、专业和年级进行分组,计算每个学生的智育分,并将其显示在视图中。