
设有一个数据库中有三个关系: 学生关系 S(S#,SNAME,AGE,SEX) 课程关系 C(C#,CNAME,TEACHER) 学习关系 SC(S#,C#,GRADE)

11题思路:

SELECT DISTINCT S#
FROM SC
WHERE C#='C2' OR C#='C4'查询结果

2. 检索至少选修课程号为 C2 和C4 的学生学号。
SELECT DISTINCT S#
FROM SC
WHERE C#='C2'
AND S# IN (SELECT S# FROM SC WHERE C#='C4')查询结果

3. 检索至少选修两门课程的学生学号。
SELECT S#
FROM SC
GROUP BY S#
HAVING COUNT(*)>1查询结果

(包括创建数据库、3张表以及上面3个问题的sql查询语言)
--创建数据库
CREATE DATABASE AAA
--使用数据库
USE AAA
--创建S表
CREATE TABLE S(
S# CHAR(10) PRIMARY KEY,
SNAME CHAR(50),
AGE CHAR(20),
SEX CHAR(20))
--添加数据到S表
INSERT INTO S(S#,SNAME,AGE,SEX)
VALUES('1','李强',19,'男'),
('2','刘丽',22,'女'),
('3','张友',22,'男')
--检验
SELECT * FROM S
--创建C表
CREATE TABLE C(
C# CHAR(10) PRIMARY KEY,
CNAME CHAR(50) ,
TEACHER CHAR(20))
--添加数据到P表
INSERT INTO C(C#,CNAME,TEACHER)
VALUES('C1','C语言','王华'),
('C2','数据课原理','程军'),
('C4','MATHS','程军')
--检验
SELECT * FROM C
--创建SC表
CREATE TABLE SC(
S# CHAR(10),
C# CHAR(50),
GRADE CHAR(20))
--添加数据到J表
INSERT INTO SC(S#,C#,GRADE)
VALUES('1','C1','83'),
('2','C1','85'),
('5','C1','92'),
('2','C2','90'),
('5','C2','84'),
('5','C4','80')
--检验
SELECT * FROM SC
--1.检索选修课程号为C2 或C4 的学生学号。
SELECT DISTINCT S#
FROM SC
WHERE C#='C2' OR C#='C4'
--2.检索至少选修课程号为 C2 和C4 的学生学号。
SELECT DISTINCT S#
FROM SC
WHERE C#='C2'
AND S# IN (SELECT S# FROM SC WHERE C#='C4')
--3.检索至少选修两门课程的学生学号。
SELECT S#
FROM SC
GROUP BY S#
HAVING COUNT(*)>1