student (sid,sname,sdept,sage) 分别代表学号、学员姓名、所属部门、学员年龄
course(cid,cname) 分别代表课程编号、课程名称
sc ( sid,cid,grade ) 分别代表学号、所选修的课程编号、学习成绩
CREATE TABLE student(
sid INT,
sname VARCHAR(32),
sdept VARCHAR(32),
sage INT
)
CREATE TABLE course(
cid INT,
cname VARCHAR(32)
)
CREATE TABLE sc(
sid INT,
cid INT,
grade INT
)
#测试数据
INSERT INTO student VALUE(1,'小美','美术部',18),(2,'阿紫','天龙八部',23),(3,'小西','明月',24)
INSERT INTO course VALUE(1,'语文'),(2,'物理'),(3,'地理'),(4,'英语'),(5,'数学')
INSERT INTO sc VALUE(1,1,60),(1,2,80),(1,3,90),(2,1,80),(2,2,90),(2,5,88),(2,4,88),(3,1,55),(3,3,77),(3,5,99),(3,4,66)
#1使用标准SQL嵌套语句查询选修课程名称为’数学’的学员学号和姓名
SELECT s.sid,s.`sname` FROM student s WHERE s.sid IN (
SELECT z.sid FROM sc z ,course c WHERE z.cid=c.cid AND c.cname='数学')
#2使用标准SQL嵌套语句查询选修课程编号为’地理