SQL 基础练习

Student 学生表

学号姓名性别年龄系别
1王五18计算机系
2南方20美术系
3特殊19金融系

Course 课程表

课程号课程名学分
1SQL Server4
2专业英语3
3美术2

Sc 选课表

学号课程名成绩
1189
2190
2275
3379

因为我的SQL数据库没有这三张表,所以我要创建这三张表出来。
在这里插入图片描述
我是用新建查询来新建表,没有在表格里创建。
在这里插入图片描述
在这里我没有设置主键,也没有给什么约束它,但是我们新建表时一定要设置主键和约束才能算是一个基本表格。这里我就不设置它的主键和约束。
新建好表后插入数据
在这里插入图片描述
插入数据后我们查询表,就会有数据了
在这里插入图片描述
把剩下的数据也插入进去。插入方法有多种,不一定是我这一种。

1 把course表中课程号为3的课程的学分修改为3
UPDATE dbo.Course set 学分 = ‘3’ where 课程号 = ‘3’
在这里插入图片描述
2 在student表中查询年龄大于18的学生的所有信息,并按学号降序排列。
SELECT * FROM dbo.Student WHERE 年龄>18 ORDER BY 学号 DESC;
在这里插入图片描述
3 在以上三个表中查询选的课程的“学分”为3,并且成绩大于80的学生的学号、姓名、和性别。
SELECT 学号,姓名, 性别 FROM dbo.Student
WHERE 学号 IN(SELECT 学号 FROM dbo.Sc
WHERE 成绩>80 AND 课程号 IN
(SELECT 课程号 FROM dbo.Course WHERE 学分=3))
在这里插入图片描述
第三题说一下我的思路。首先我会查询出成绩大于80且学分为3的学号。
SELECT 学号 FROM dbo.Sc WHERE 成绩>80 AND 课程号 IN (SELECT 课程号 FROM dbo.Course WHERE 学分=3)
然后查询student表以学号为查询条件进行查询,就可以了。
第三题的重点是表与表之间的联系。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值