SQL数据库的问题目

1.三个表(关于学生信息的)简单的查询,多表查询,查询没有选某课程的,等等2.SQL数据库的增删改查语句等.... 1.三个表(关于学生信息的)简单的查询,多表查询,查询没有选某课程的,等等2.SQL数据库的增删改查语句等. 展开
 我来答
从这里到家
2011-12-07 · 超过21用户采纳过TA的回答
知道答主
回答量:61
采纳率:0%
帮助的人:51.6万
展开全部
这是在一个student数据库上建立的查询,你可以把邮箱告诉我,我把数据库文件发给你,当然如果你想自己建的话也行,下面是三张表。
sno sname ssex sage sdept
200215121 李勇 男 20 CS
200215122 刘晨 女 19 CS
200215123 王敏 女 18 MA
200215125 张立 男 19 IS

cno cname cpno ccredit
1 数据库 5 4
2 数学 NULL 2
3 信息系统 1 4
4 操作系统 6 3
5 数据结构 7 4
6 数据处理 NULL 2
7 PASCAL语言 6 4

sno cno grade
200215121 1 92
200215121 2 85
200215121 3 88
200215122 2 90
200215122 3 80
--1.查询所有年龄在20岁以下的学生姓名及其年龄。
select sname,sage
from student
where sage<20

--2.查询考试成绩有不及格的学生的学号。
select sno
from sc
where grade<60

--3.查询年龄不在19~22岁之间的学生姓名、系别和年龄。
select sname,sdept,sage
from student
where sage not between 19 and 22

--4.查询既不是信息系,也不是计算机科学系的学生的姓名和性别。
select sname,ssex
from student
where sdept not in ('IS','CS')

--5.查询所有姓刘学生的姓名、学号和性别
select sname,sno,ssex
from student
where sname like '刘%'

--6.在Course数据表中添加记录('8','DB_design','2',4),并查询以"DB_"开头,且倒数第3个字符为 i的课程的详细情况
select *
from course
where cname like 'DB\_%i__%' escape'\'

--7.在SC数据表中添加记录('200215123','1',null),并查询所有有成绩的学生学号和课程号
select sno,cno
from sc

--8.查询全体学生情况,查询结果按所在系的系号降序排列,同一系中的学生按年龄升序
select *
from student
order by sdept desc,sage asc

--9.计算2号课程的学生平均成绩。
select AVG(grade)
from sc
where cno='2'

--10在SC数据表中添加记录('200215123','1',23),统计出不及格的同学学号和不及格的门数。
select student.sno,count(grade)
from sc,student
group by student.sno
having grade<60

--11.查询选修1号课程的学生最高分数。
select MAX(grade)
from sc
where cno='1'

--12.查询学生200215121选修课程的总学分数。
select SUM(grade)
from sc
where sno='200215121'

--13.求各个课程号及相应的选课人数
select cno,COUNT(sno)
from sc
group by cno

--14.查询选修了2门以上(包括2门)课程的学生学号
select sno
from sc
group by sno
having count(*)>=2

--15.查询成绩大于等于90分的学生的学号和姓名
select student.sno,sname
from student,sc
where grade>90

--16.查询选修了“数据库”课程的学生的学号和姓名
select student.sno,sname
from student inner join sc on student.sno=sc.sno
where cno=(select cno from course where cname='数据库')

--17.查询选修了3号课程且成绩高于此课程平均成绩的学号和成绩
select student.sno,grade
from student inner join sc on student.sno=sc.sno
where cno='3'
and grade>(select AVG(grade) from sc)

--18.查询没有选修1号课程的学生姓名。
select sname
from student,sc
where cno!='1'

--1.建立计算机系选修了2号课程的学生视图V1
create view v1
as
select sno,sname,ssex,sage,sdept
from student,course
where sdept='cs' and cno='2'
--2.建立信息系选修了1号课程且成绩在90分以上的学生的视图V2
create view v2
as
select student.sno,sname,ssex,sage,sdept
from student,course,sc
where course.cno='2' and grade>90
--3.将每门课程的课程号和平均成绩定义为一个视图V3
create view v3(cno,avg_grade)
as
select cno,avg(grade)
from sc
group by cno
--三、创建和执行下列存储过程:
--o 创建语句格式:
--n CREATE Proc[edure] 存储过程名
--[{@参数名 数据类型}[=default][output]]
--As
--Sql语句[…n]
--o 执行语句格式:
--n [exec[ute]] 存储过程名[实参[,output][,…n]
--1.查询计算机系学生的考试成绩,列出学生的姓名、课程名和成绩。
select sname,cno,grade
from student,sc
where sdept='cs'
--2.查询某个指定系学生的考试成绩,列出学生的姓名、所在系、课程名和成绩。
select sname,sdept,cname,grade
from student,sc,course
where sdept='%'
--3.查询某个学生某门课程的考试成绩,列出学生的姓名、课程名和成绩。
select sname,cno,grade
from student,sc
where sname='%' and cname='%'
--4.查询某个学生某门课程的考试成绩,若没有指定课程,则默认课程为“数据库基础”。
select sname,cno,grade
from student,sc
where sname='%' and cname='%'
--5.统计指定课程的平均成绩,并将统计的结果用输出参数返回。
--6.创建带删除数据的存储过程,要求删除考试成绩不及格学生的修课记录。
--7.创建带修改数据的存储过程,要求将指定的课程的学分增加2分。
oceandeep1984
2011-12-07 · 超过15用户采纳过TA的回答
知道答主
回答量:101
采纳率:0%
帮助的人:52.4万
展开全部
你连最基本的SQL都不会写 还做什么数据库啊!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sunchongkai505
2011-12-07 · TA获得超过1005个赞
知道小有建树答主
回答量:959
采纳率:0%
帮助的人:362万
展开全部
表结构列一下,没时间帮你设计表
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
懂了爸
2011-12-07
知道答主
回答量:17
采纳率:0%
帮助的人:1.5万
展开全部
你这说得也太模糊了吧~~~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式