⑴ 关于学生,课程,选课三张表的sql查询
select 选课.学号,姓名,AVG(成绩)'平均分',COUNT(选课.课程号)'选课门数' from 学生,课程,选课 where 学生.学号=选课.学号 and 课程.课程号=选课.课程号 group by 选课.学号,姓名 HAVING COUNT(选课.课程号)>4 ORDER BY AVG(成绩) DESC
--------------------------------------
CREATE VIEW 查询 AS
select top 100 选课.学号,姓名,AVG(成绩)'平均分',COUNT(选课.课程号)'选课门数' from 学生,课程,选课 where 学生.学号=选课.学号 and 课程.课程号=选课.课程号 group by 选课.学号,姓名 HAVING COUNT(选课.课程号)>4 ORDER BY AVG(成绩) DESC
其中DESC是降序排列,ASC是升序排列,默认是升序
ORDER BY AVG(成绩)也可以写成ORDER BY 平均分,因为已经指定了别名
“CREATE VIEW 查询”中的“查询”是新表名, 如果有“ORDER BY AVG(成绩) DESC ”这句,则须有“top”,否则出错“除非同时指定了 TOP,否则 ORDER BY 子句在视图、内嵌函数、派生表和子查询中无效。”
⑵ 数据库sql 的课程设计怎么做,要借哪些书看,求大神指教
IT行业,数据库确实是一门相当重要的课程。但是在大学里面,对待数据库原理及应用这么课程以及其课程设计的重视程度就相差很大了,各个学校要求也不一样。如果是要学好,那确实要下工夫;如果只是完成课程设计,交差了事,其实相当简单。
既然是课程设计,也算是个小小的项目,既然是项目,也就离不开需求分析、数据库设计、部署实现等环节。当然,这个小小的项目只需要前面的部分:需求和数据库设计,数据库设计是重点。
需求分析就不用多说,和所有其他项目一样,无非就是用户需求,功能需求,系统需求等,找任何一本关于需求分析的书都是可以,除了那些个空话之外,更多的是要根据设计需要进行分析。
数据库设计就比较复杂一点,首先得把数据库原理搞清楚,比如:符合什么样的范式,怎么画ER图,如何理解用例图。在设计数据库之前,有一系列的分析要做:面向对象分析,用例分析,类和对象分析等等。分析到位是数据库设计成功的重要保障。分析完成之后才是设计,比如:逻辑结构设计,关系模式设计,存取方法设计,存储结构设计,数据完整性设计,参考完整性设计,Check约束,Default约束,触发器设计,视图设计,存储过程设计,权限设计等。这些都完成了,最后一步才是写SQL代码实现这些设计,创建数据库及相关的数据表,关联,视图,触发器,存储过程等一些列的看得见的数据库参数。
上面说的比较理论,也比较笼统。我想我可以用一个简单例子告诉你我要表达的意思。例子很简单,其中很多地方都不是太好,不过或许可以给你一个直观的思路。
数据库应用课程设计报告书
网上超市管理系统
成 绩:
学 号:
姓 名:
指导教师:
20 年 月 日
目录
任务书......................................... (3)
1. 需求调查、分析................................. (4)
1.1.企业介绍.................................... (4)
1.2.需求调查及分析.............................. (5)
2. 面向对象分析和设计............................. (7)
2.1. 用例分析 (7)
2.2.类和对象设计 (12)
3. 逻辑结构设计.................................. (15)
3.1. 类和对象向关系模式转换............................................ (15)
3.2. 关系模式优化 (16)
4. 数据库物理结构设计............................ (16)
4.1. 存取方法设计 (16)
4.2. 存储结构设计 (17)
5. 数据库完整性设计.............................. (17)
5.1. 主键及唯一性索引 (17)
5.2. 参照完整性设计 (18)
5.3. Check约束 (18)
5.4. Default约束 (18)
5.5. 触发器设计 (19)
6. 数据库视图设计................................ (19)
7. 数据库存储过程设计............................ (20)
8. 权限设计...................................... (20)
9. 总结.......................................... (21)
⑶ SQL班级课程信息模块
哪个模块啊?在哪写呢?
不过从楼上的答案中我看出个大概吧。
就是要三个表,学生、课程、成绩
首先说,每个表都要建一个主键。如今的主流是用guid编码建主键,也就是数据库中的uniqueidentifier类型。
学生表
create table Student
(
Spk uniqueidentifier PRIMARY key,--主键(唯一标识)
Sno varchar(10), --学号
Sname nvarchar(50), --姓名
Ssex bit,--性别
Sage tinyint,--年龄
Sdept varchar(10))--班级
go
课程表
create table Course--课程
(
Cpk uniqueidentifier PRIMARY key,--主键Cno varchar(10), --课程编号
Cname nvarchar(200), --名称
Cpno varchar(10)) --任课老师编号(姓名也可,但注意类型建议改为nvarchar(50)
)
go
create table SC
(
SCpk uniqueidentifier PRIMARY key,--主键Spk uniqueidentifier,--学生表主键
Cpk uniqueidentifier,--课程主键
Grade int--成绩)
go
关联方式很明显了,
例如要查询学号为A001的学生成绩,代码如下:
select Grade from SC,Student,Course where SC.Spk=Student.Spk and SC.Cpk=Course.Cpk
⑷ 学习SQL课程需要什么基础我是长春大学大四的学生,学习这个课程后对找工作有没有帮助呢
学习这个课程是不需要什么什么基础的,因为他都是零基础开始学习的,如果你想往数据库方面发展的话,建议你最好先学习SQL这个课程,因为这个是你从事数据库方面工作最基础的,大四现在找工作都很不容易,还是充好电,再去找工作吧。给你介绍一个不错的IT培训学校,长春方联,有时间你去看看,对你也许会有意想不到的收获。那里的老师可以给你具体介绍一下的。
⑸ 哪里可以找到SQL数据库视频课程
东南大学SQL数据库基础
全42讲 主讲-辛研
链接:https://pan..com/s/1D5Nmns5uQUaNSDV_8yFjsw
提取码:3je4
东南大学SQL数据库基础 全42讲 主讲-辛研 网络网盘
⑹ sql数据库设计题
1.select 学号,姓名 from 学生 where 班级='软件041'
2.select * from 课程 where 课程名称 like '%语言%'
3.select 学生.学号,姓名,班级 from 学生 where 学号 in(
select top 5 学号 from 选课 where 课程号 in(
select 课程号 from 课程 where 课程名称='C语言'
) order by 成绩 desc
)
4.select 班级,count(1) 学生人数 from 学生 group by 班级
5.select 学号 from 选课 where 课程号=(
select 课程号 from 课程 where 课程名称='计算机应用基础'
) 成绩>(select 成绩 from 选课 where 学号=(select 学号 from 学生 where 姓名='张三') and 课程号=(
select 课程号 from 课程 where 课程名称='计算机应用基础'
)
)
⑺ SQL数据库查询课程表中课时在30~60之间(含这2个值)所有的记录
select * from tb_test where 课时 between 30 and 60
或者
select * from tb_test where 课时 >= 30 and 课时 <= 60