create database StudCourse; use StudCourse; #Student(Sid,Sname,Sage,Ssex) 学生表 CREATE TABLE student ( sid varchar(10) NOT NULL, sName varchar(20) DEFAULT NULL, sAge datetime DEFAULT '1980-10-12 23:12:36', sSex varchar(10) DEFAULT NULL, PRIMARY KEY (sid) ) ENGINE=InnoDB DEFAULT CHA-RSET=utf8; #Course(Cid,Cname,Tid) 课程表 CREATE TABLE course ( cid varchar(10) NOT NULL, cName varchar(10) DEFAULT NULL, tid int(20) DEFAULT NULL, PRIMARY KEY (cid) ) ENGINE=InnoDB DEFAULT CHA-RSET=utf8; #SC(Sid,Cid,score) 成绩表 CREATE TABLE sc ( sid varchar(10) DEFAULT NULL, cid varchar(10) DEFAULT NULL, score int(10) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHA-RSET=utf8; #Teacher(Tid,Tname) 教师表 CREATE TABLE teacher ( tid int(10) DEFAULT NULL, tName varchar(10) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHA-RSET=utf8; #数据:( MySQL ) insert into teacher(tid,tName) values (1,' 李老师'),(2,' 何以琛'),(3,' 叶平'); insert into student(sid,sName,sAge,sSex) values ('1001',' 张三丰 ','1980-10-12 23:12:36',' 男'),('1002',' 张无极 ','1995-10-12 23:12:36',' 男'),('1003',' 李奎','1992-10-12 23:12:36',' 女'),('1004',' 李元宝 ','1980-10-12 23:12:36',' 女'),('1005',' 李世明','1981-10-12 23:12:36',' 男'),('1006',' 赵六','1986-10-12 23:12:36',' 男'),('1007',' 田七','1981-10-12 23:12:36',' 女'), ('1008',' 张三丰 ','1982-08-12 23:12:36',' 男'); insert into sc(sid,cid,score) values ('1','001',80),('1001','002',60),('1001','003',75),('1002','001',85),('1002','002',70),('1003','004',100), ('1003','001',90),('1003','002',55),('1004','002',65),('1004','003',60); insert into course(cid,cName,tid) values ('001',' 企业管理 ',3),('002',' 马克思 ',3),('003','UML',2),('004',' 数据库 ',1),('005','英语',1);
时间: 2023-08-20 17:29:28 浏览: 91
好的,根据您提供的数据库表结构和数据,以下是查询选修课程名称为“数据库”的学生姓名和分数的 SQL 语句:
```
SELECT s.sName, sc.score
FROM student s
JOIN sc ON s.sid = sc.sid
JOIN course c ON c.cid = sc.cid
WHERE c.cName = '数据库';
```
执行该 SQL 语句后,将会返回选修了“数据库”课程的学生姓名和分数。
相关问题
1.学生表 create table student ( sid varchar(16),---学号 sname varchar(32),--学生姓名 sage int,---学生年龄 ssex varchar(16)---学生性别 ) 2.课程表 create table course ( cid varchar(16),--课程编号 cname varchar(32),--课程名称 tid varchar(16)---教师编号 ) 3.成绩表 create table course ( sid varchar(16),--学号 cid varchar(32),--课程编号 score int---成绩 ) 4.教师表 create table teacher ( tid varchar(16),--教师编号 tname varchar(32)--教师名字) 查询成绩大于85分的学生姓名
可以使用以下 SQL 语句查询成绩大于85分的学生姓名:
SELECT sname FROM student, score WHERE student.sid = score.sid AND score.score > 85;
建学生表 Student(SId,Sname,Ssex,Dno) SId 学号(唯一),主键 Sname 学生姓名,非空 Ssex 性别为男或女,默认为“男” Dno 学生所在系(外键),参考departmen表中的 Dno 列
SQL语句如下:
```
CREATE TABLE Student (
SId CHAR(10) PRIMARY KEY,
Sname VARCHAR(20) NOT NULL,
Ssex CHAR(2) DEFAULT '男' CHECK (Ssex IN ('男', '女')),
Dno CHAR(10) REFERENCES department(Dno)
);
```
其中,SId为CHAR类型,长度为10,作为主键;Sname为VARCHAR类型,长度为20,不能为空;Ssex为CHAR类型,长度为2,有默认值"男",且只能取"男"或"女"两个值;Dno为CHAR类型,长度为10,作为外键,参考department表中的Dno列。
阅读全文