第一篇:SQL习题练习_1_zxx(写写帮推荐)
常用sql server 语句 A
设有教学数据库的三个基本表:学生表Student(Sno,Sname,Sage,Ssex, Sdept), 课程表Course(Cno,Cname,Teacher), 选课表 SC(Sno,Cno,Grade), 用SQL语言实现下列功能: 1.建立学生表Student,其中姓名属性值是唯一的,性别属性不能为空。
2.查询所有年龄在22岁以上的女学生姓名及其年龄。
3.查询选修了C3号课程的学生的学号及其成绩,查询结果按分数的降序排列。
4.查询学习1号课程的学生最高分数、最低分及平均成绩。
5.查询与’张军’在同一个系学习的学生信息。
6.将化学工程系全体学生的成绩提高5%。
7.查询选修成绩大于60分的学生的学号及姓名。
8.删除选修高等数学所有学生的成绩记录。
9.求年龄大于男同学平均年龄的女学生姓名和年龄。
10.统计每门课程的选修人数大于20的课程,并输出课程号和选修人数。
11.检索姓刘的所有学生的姓名和年龄。
12.统计每个学生选修课程的情况,并输出学号和选修课程数目。
13.把选修MATHS课不及格的成绩全改为空值。
14.删除王力选课记录。
15.在sc中,把英语课成绩提高10% A 1.建立学生表Student,其中姓名属性值是唯一的,性别属性不能为空。CREATETABLE Student(Sno CHAR(5)Primary key, Sname CHAR(20)UNIQUE,Ssex CHAR(2)NOT NULL, Sage INT, Sdept CHAR(15));
2.查询所有年龄在22岁以上的女学生姓名及其年龄。SELECT Sname, Sage from student WHERE Sage >20 and Ssex=’F’
3.查询选修了C3号课程的学生的学号及其成绩,查询结果按分数的降序排列。SELECT Sno, Grade FROM SC WHERE Cno='C3' ORDER BY Grade DESC
4.查询学习1号课程的学生最高分数、最低分、平均成绩。SELECT MAX(Grade), MIN(Grade),AVG(Grade)FROM SC WHERE Cno='1'
5.查询与“张军”在同一个系学习的学生信息。SELECT Sno, Sname, Sdept FROM Student WHERE Sdept IN(SELECT Sdept FROM Student
WHERE Sname='张大山')
6.将化学工程系全体学生的成绩提高5%。UPDATE SC
SET Grade= Grade*1.1
WHERE Sno in(SELECT Sno FROM Student WHERE Sdept = '化学工程系')
7.查询选修成绩大于60分的学生的学号及姓名。SELECT Sno, Sname from student,sc WHERE student.sno=sc.sno and grade>60
8.删除选修高等数学所有学生的成绩记录。
DELETE FROM SC
WHERE Cno in(SELECT Cno FROM Course WHERE Cname = '高等数学')
9.求年龄大于男同学平均年龄的女学生姓名和年龄。SELECT Sname , Sage from Student Where Ssex=’女’ and Sage>(Select Avg(Sage)from Student Where Ssex=’男’)
10.统计每门课程的选修人数大于20的课程,并输出课程号和选修人数。SELECT Cno,Count(Sno)from SC Group by Cno Having Count(*)>15 11.检索姓刘的所有学生的姓名和年龄。
SELECT Sname,Sage FROM S
WHERE Sname LIKE '刘%'
12.统计每个学生选修课程的情况,并输出学号和选修课程数目。SELECT Sno,Count(Cno)from SC
Group by Sno
13.把选修MATHS课不及格的成绩全改为空值。
update sc
set grade=null
where grade<60 and cno in(select cno from c where cname='maths')14.删除王力选课记录。
DELETE FROM SC
WHERE sno in(SELETE sno FROM Student WHERE sname=‘王力’);
15.在sc中,把英语课成绩提高10%
UPDATE SC
SET Grade=1.1*Grade
WHERE cno in(SELETE cno FROM course WHERE cname = ‘英语’);
常用sql server 语句
B
设有教学数据库的三个基本表:学生表Student(Sno,Sname,Sage,Ssex, Sdept), 课程表Course(Cno,Cname,Teacher), 选课表 SC(Sno,Cno,Grade), 用SQL语言实现下列功能: 1.建立课程表Course,其中课程名属性值是唯一的,教师属性不能为空。
2.查询计算机科学系全体学生的名单。
3.查询选修了1号课程的学生的学号及其成绩,查询结果按分数的升序排列。
4.查询学习2号课程的学生最高分数、最低分数、平均成绩。
5.查询选修成绩大于85分的学生的学号及姓名。
6.将选修王军老师所授课程所有学生的成绩提高5%。
7.检索学号比王小军同学小的学生姓名。
8.删除外语系所有学生的成绩记录。
9.求年龄小于女同学平均年龄的男学生姓名和年龄。
10.统计每门课程的选修人数大于50的课程,并输出课程号和选修人数。
11.在sc中,把高等数学课成绩提高10%
12.统计每个学生选修课程的情况,并输出学号和选修课程数目。
13.把选修大学物理课不及格的成绩全改为空值。
14.删除张红选课记录。
15.检索姓王的所有学生的姓名、年龄和选课成绩。
1.建立课程表Course,其中课程名属性值是唯一的,教师属性不能为空。CREATETABLE Course(Cno CHAR(5)Primary key, Cname CHAR(20)UNIQUE, Teacher CHAR(2)NOT NULL);
2.查询计算机科学系全体学生的名单。SELECT Sname from student WHERE Sdept=’计算机科学系’
3.查询选修了1号课程的学生的学号及其成绩,查询结果按分数的升序排列。SELECT Sno, Grade FROM SC WHERE Cno='1' ORDER BY Grade
4.查询学习2号课程的学生最低分数、平均成绩。SELECT MIN(Grade), AVG(Grade)FROM SC WHERE Cno='2'
5.查询选修成绩大于85分的学生的学号及姓名。SELECT Sno, Sname from student,sc WHERE student.sno=sc.sno and grade>80
6.将选修王军老师所授课程所有学生的成绩提高5% UPDATE SC
SET Grade= Grade*1.05 WHERE Cno in(SELECT Cno FROM Course WHERE Cname = '王军')
7.检索学号比王小军同学小的学生姓名 SELECT Sname from Student Where Sno<(Select sno from Student where Sname=’王小军’)
8.删除外语系所有学生的成绩记录。
DELETE FROM SC
WHERE Sno in(SELECT Sno FROM Student WHERE Sdept = '外语系')
9.求年龄小于女同学平均年龄的男学生姓名和年龄。
SELECT Sname , Sage from Student Where Ssex=’男’ and Sage<(Select Avg(Sage)from Student Where Ssex=’女’)
10.统计每门课程的选修人数大于50的课程,并输出课程号和选修人数。SELECT Cno,Count(Sno)from SC Group by Cno Having Count(*)>50 11.在sc中,把高等数学课成绩提高10%
UPDATE SC
SET Grade=1.1*Grade
WHERE cno in(SELETE cno FROM course WHERE cname = ‘高等数学’);
11.检索姓刘的所有学生的姓名和年龄。
SELECT Sname,Sage FROM S
WHERE Sname LIKE '刘%'
12.统计每个学生选修课程的情况,并输出学号和选修课程数目。SELECT Sno,Count(Cno)from SC
Group by Sno
13.把选修大学物理课不及格的成绩全改为空值。
update sc
set grade=null
where grade<60 and cno in(select cno from c where cname='大学物理课')14.删除张红选课记录。
DELETE FROM SC
WHERE sno in(SELETE sno FROM Student WHERE sname=张红’);
15.检索姓王的所有学生的姓名、年龄和选课成绩。
SELECT Sname,Sage,grade FROM Student, SC
WHERE Sname LIKE '刘%' and Student.sno=sc.sno
第二篇:SQL习题1
Customers(cid,cname,city,discnt)存储客户信息。
cid 主键,客户的惟一标识符 cname 客户名称 city 客户所在城市
discnt客户在价格上所获得的折扣
saleagents(aid,aname,city,percent)存储销售代理的信息
aid 主键,销售代理的惟一标识符 aname 销售代理的名称 city 销售代理所在城市
percent 销售代理每笔交易的提成
products(pid,pname,city,quantity,price)存储产品的信息
pid主键,销售代理的惟一标识符 pname 产品名称
city 产品在哪个城市存放 quantity产品的库存量 price产品的单价 orders(orderno,month,cid,aid,pid,qty,dollars)存储每一笔交易的信息
orderno 主键,每一笔定单的编号 month 签订定单的月份
cid 客户的标识符,用于指明是和哪一个客户签订的定单
aid 代理的标识符,用于指明是和哪一个代理签订的定单
qty 定单交易的产品数量 dollars交易的总的价格
1. 查询产地为上海的产品的名称与库存量。
2. 查询产地为上海、北京、深圳的产品名称与价格。
3. 查询价格在低于50的产品名称与单价。4. 查询客户的全部信息。
5. 在定单(ORDER表)中查询不重复的客户号。
6. 查询库存量在3000与5000之间的产品名称与库存量。7. 查询不在北京、深圳和上海的客户名称和所在城市。
8. 查询客户名称最后一个字为‘南’的客户编号与名称。
9. 查询销售代理的编号和名称并用别名的方式将相应的列标题改为‘代理编号’,‘代理名称’ 查询产品名称第二个字为‘电’的产品编号和名称。查询产品名称为以‘电-’开头的所有产品信息 查询产品库存量在2000以上的产品名称与库存量并按库存量的降序排列
select pname,quantity from products where quantity>2000 order by quantity desc;查询产品的全部信息并按价格升序,库存量降序排列。
Select * from products orderby price,quantity desc;
1.在产品表中查询产品数量小于10000,价格大于20元的商品信息。
2.检索所有的客户信息,并按折扣率升序排列。
3.检索所有的产品信息,查询结果按产品的库存量升序排列,库存量相同的按产品的单位售价降序排列。4.查询客户总人数。
5.查询签了订单的总人数。6.查询CPU的平均价格。7.查询CPU的最高、最低价。
8.计算C001客户所签订单中的产品总量。9.计算所有产品的平均价格。
10.代理商A001所做的定单中,销售额最大的定单额度。
11.Select Max(dollars)from orders where aid=’A001’;12.检索每一客户及相应的定单数。13.检索签订的定单数超过5的客户及相应的定单数。
14.检索每个客户及其与此客户签订的定单情况。Select customers.* ,orders.* from customers,orders where customers.cid =orders.cid
15.检索至少签订了两个定单的客户编号。Select cid form orders A,orders B where A.cid =B.cid and A.orderno<> B.orderno
查询每个客户签定的定单数。Select cid,count(cid)from orders group by cid;
16.检索“AK公司”所签的每笔定单的数量及代理的名称。//子查询
17.检索与C001客户在同一个城市的所有客户信息。
18.检索所有通过代理A003或A004购买产品的客户信息。
19.检索所有不通过代理A003或A004购买产品的客户信息。
20.检索所有通过纽约的代理购买产品的客户信息。
21.检索满足如下条件的客户信息:此客户签订的定单中的数量(qty)大于C001客户所签的所有定单中某一个定单的数量(qty)。
22.检索客户签定的定单中比C001所签的所有定单的数量都大的定单的信息。
SC(SNO,CNO,GRADE)输出每个学生学号及其相应选课数。//连接查询
Select sno,count(cno)from SC group by sno;
Select sno, count(sno)where grade>80 group by sno having count(sno)> 3 2 查询选课数目大于3的学生学号及课程数。查询有三门以上课程分数在80分以上的学生学号和课程数。查询每个学生选修的课程号。Select cno from SC;Select sno,cno from SC;查询每个学生选修的课程并且按学号降序排列。
Select sno,cno from SC Order by sno DESC;7 查询学号为‘003’的学生选修的课程号。
Select cno from SC where sno=’003’;8 查询学号为‘003’的学生选修的课程数。
Select count(cno)from SC where sno=’003’;查询每个学生及其选修的课程数。Select sno,count(cno)from SC group by sno;查询每门课程选课的人数。
Select cno,count(sno)from SC group by cno;11 查询选修的课程数不低于两门的学生学号和课程数。
Select sno,count(cno)from SC group by sno having count(cno)>=2;12 查询选修的学生数不低于20人的课程号及选修的学生数。
Select cno,count(sno)from SC group by cno having count(sno)>=20;查询选修了两门或两门以上课程的学生学号。
select sno from SC A , SC B where A.sno=B.sno and A.cno<>B.cno;Select sno,count(sno)from sc group by sno having count(sno)>=2
作业
有如下数据库:
学生表:
student(sno,sname,ssex,sage,sdept)课程表:
course(cno,cname,cpno,ccredit)学生选课表:sc(sno,cno,grade)1.查询所有学生的学号和姓名。2.查询CS系年龄20岁以下的学生学号和姓名。
3.按系别升序,同一个系按学号降序显示全体女生的信息。4.查询全部女生的人数。5.查询各个系女生的人数。
6.查询女生人数超过50人的系及女生人数。
1.查询全体学生的姓名、选修的课程名及分数。
2.查询CS系选修了课程名为‘MATH’的学生姓名和分数。3.查询CS系选修了课程名为‘MATH’的学生平均分数。4.查询CS系选修了课程名为‘MATH’的学生人数。5.查询选修了‘EN’课的最高分的学生姓名及分数。
6.查询选修了‘EN’课的全体学生的总分。
7.查询各系选修‘EN’课的学生这门课的最高分、平均分,选课人数
8.查询CS系和IS系全体学生的信息。
第三篇:SQL语句练习
1.用SQL语句在“商学院教学管理”数据库中建立学生表、课程表、成绩表、教师表、授课表、班级表。实现下列要求:
(1)按课本第99-100页表结构要求建立以上六张表。
(2)在学生表中插入一个学生记录:(”99082901”,”程丽”,”女”,1981-2-10,”群众”,”200704”)。
(3)使选修CZ004号课的同学的成绩为NULL值。
(4)为课程表加一”教师”列。
(5)修改课程表,使“肖贵”老师教CJ001号课。
(6)列出“王勇”老师所授课程的课号和课名。
(7)列出年龄不小于20的男生的学号和姓名。
(8)统计学生所选课程的门数。
(9)列出选修CJ001号课的学生的平均年龄。
(10)列出选修“计算机基础”课的学生的平均成绩、最高分和最低分。
(11)列出所有姓“李”的同学的姓名、年龄和性别。
(12)列出成绩表中成绩为空值的学生的姓名、课号。
(13)列出年龄大于女生平均年龄的男生的姓名和年龄。
(14)删除成绩表中无成绩的记录。
(15)把低于CJ001号课平均成绩的所有同学的所有课程的成绩提高5分。
(16)按学号升序,成绩降序列出每个同学的选课情况(包括姓名、课名、成绩)。
(17)按课号和成绩降序列出每门课的选课情况包括课名、姓名、成绩。
(18)按成绩降序列出每个同学的姓名、总成绩。
(19)求出学习全部课程的所有同学的名单。
(20)列出平均成绩大与80分同学的学号和平均成绩,按平均成绩降序排列。
(25)查询平均成绩排在前5名的学生姓名及平均成绩。
(26)统计选修课程在3门以上(含3门)的学生的学号、姓名和平均成绩。
(27)查询学生年龄超过21岁的学生信息。
(28)列出所有姓“李”的同学的学号、姓名、年龄和性别。
(29)按成绩降序列出每个同学的姓名、总成绩。
第四篇:SQL数据库上机练习3
SQL数据库上机练习3
在C:盘根目录下用自己的名字加“_DB”建立一个文件夹。(例:“王平_DB”)
一.(6分)在SQL Server Management Studio中建立满足如下要求的数据库:
1. 数据库名字为:TGDB;
2. 此数据库包含的一个主数据文件和一个辅助数据文件。主数据文件的逻辑文件名为:TG_data1,物理文件名为TG_data1.mdf,存放在新建文件夹下,初始大小为4MB,自动增长,每次增加20%,最多增加到8MB。辅助数据文件的逻辑文件名为:TG_data2,物理文件名为TG_data2.ndf,同主数据文件存放在相同的位置,初始大小为2MB,不自动增长。
3. 日志文件包含一个,其逻辑文件名为:TG_log,物理文件名为TG_log.ldf,同主数据文件存放在相同的位置,初始大小为3MB,增长方式为自动增长,每次增加1MB,文件增长不受限制。二.(10分)为描述作者向期刊的投稿情况,建立了三张表:作者表、期刊表和投稿表。期刊表用于描述期刊的基本信息,作者表用于描述作者的基本信息,投稿表用于描述作者向期刊的投稿情况。在查询分析器中写出创建这三张表的语句,并将语句以文件形式保存下来,文件名为“考生名.sql”,存放在新建的文件夹下。可以将后续所有的SQL语句均保存在此文件中,在文件中注明题号,不用抄题)。
注:括号中为表名和列名的拼音表示,建表时用拼音表示表名和列名,不区分大小写。三张表的结构如下: 1.作者表(ZZB)
作者号(zzh)普通字符编码定长字符型,长度为4,主码;
作者名(zzm)统一字符编码可变长字符型,最多5个汉字,取值不重复。
2.期刊表(QKB)
期刊号(qkh)
普通字符编码定长字符型,长度为4,主码;
期刊名(qkm)
普通字符编码可变长字符型,最大长度为20,非空;
类别(lb)
普通字符编码定长字符型,长度为2,取值为“是”或“否”
(说明:“是”表示此期刊为核心期刊,“否”表示此期刊为非核心期刊)。
版面费(bmf)
整型。
3.投稿表(TGB)
作者号(zzh)
普通字符编码定长字符型,长度为4,非空; 期刊号(qkh)
普通字符编码定长字符型,长度为4,非空; 投稿日期(tgrq)
小日期时间型,非空,默认值为系统当前时间; 文章名称(wzmc)普通字符编码定长字符型,长度为50;
审稿结果(sgjg)
统一字符编码定长字符型,长度为3,取值范围为{通过,未通过},默认值为“未通过”。
其中,主码为(作者号,期刊号,投稿日期),“作者号”为引用作者表的“作者号”的外码; “期刊号”为引用期刊表的“期刊号”的外码。
三.(6分)运行C:exam.exe程序解压缩数据文件(可解压到任何地方),解压缩的密码为“dbok”。利用SQL Server的导入导出向导,将“期刊表.txt”文件中的数据导入到“期刊表”中,将解压后的 “作者与投稿表.xls”文件中的数据分别导入到 “作者表”和“投稿表”中。四.(6分)在SQL Server Management Studio中创建“SQL Server身份验证”模式的登录帐号:TG_User,其中账户密码为空,默认数据库为Master。并完成如下操作: 1.让TG_User成为TGDB数据库的合法用户。
2.在TGDB数据库中建用户自定义角色:MyRole,让TG_User成为MyRole角色中的成员。3.用较好的方法授予MyRole在TGDB数据库中具有所有用户表的查询权。
五.(4分)在SQL Server Management Studio中按要求完成下列操作:
1.创建一个永久备份设备,备份设备的名字为“TG_BK”,存放在新建文件夹下,物理文件名为“TG_BK.bak”。
2.用“TG_BK”备份设备对“TGDB”进行一次完全备份。六.(28分)利用第二题的三张表,在查询分析器中写出实现如下要求的SQL语句,注明题号。并将这些语句与第二题所写的语句保存在一起。(注:要求下述语句均使用一条SQL语句完成)1.查询2006年以后(包括2006年)的投稿情况,列出作者名、期刊名、文章名称和投稿日期。2.查询姓哪个姓的作者最多,列出这个姓氏和姓这个姓氏的作者人数,包含并列的情况。3.查询作者“杨伍华”没有投过稿的核心期刊的名称。
4.查询“杨伍华”投过稿的期刊的投稿情况,显示期刊号,审稿通过总次数,版面费总金额(说明:只有审稿结果为“通过”时,作者才需向期刊缴纳相应版面费),要求只列出投稿次数超过5次(不包括5次)且版面费总金额大于7000的情况。
5.查询全体作者(包括还没有投过稿的作者)的人均投稿次数,列出总投稿次数、总人数和人均投稿次数。要求平均投稿次数保存到小数点后2位。
6.向投稿表中插入一条记录,作者号为“zz01”,期刊号为“qk02”,文章名称为“地铁限界系统的研究”,投稿日期和审稿结果为默认值。7.删除投稿表中2000年以前(包括2000年),期刊名为“哲学研究”中审稿未通过的的投稿记录。七.(10)统计每位作者的投稿情况,列出作者名,投稿通过率(保留到小数点后2位),评价。其中,当投稿通过率高于0.7,评价为“高”;当投稿通过率在0.4到0.7之间,评价为“中”;当投稿通过率低于0.4,评价为“低”。(可分步骤实现)八.(10)用游标实现按如下报表形式显示结果的SQL语句。该报表首先输出期刊名称(只包括有投稿记录的期刊),然后显示此期刊的详细投稿情况,包括是否为核心期刊、作者名、投稿日期、审稿结果和文章名称。(说明:“是否为核心期刊”一项填写要求:如果是核心就写“是”,否则就写“否”。注意:报表的显示格式。)提示:有关游标的语句格式如下:
声明游标:declare 游标名 cursor for select 语句 打开游标:open 游标名 关闭游标:close游标名
提取数据:fetch next from 游标名 into„„ 释放游标:deallocate 游标名 全局变量:@@fetch_status 报表形式大致如下:(下表只列出了部分数据)
期刊名称:计算机应用研究
是否为核心期刊
作者姓名
投稿日期
审稿结果
文章名称
是
陈毅华
2007年6 月3 日
通过
信息安全的第二道防线——入侵检测系统
是
杨晓光
2008年6 月9 日
通过
一种基于移动agent技术的分布式数据检索系统的实现
是
杨伍华
2007年8 月29日
通过
无线传感器网络的研究
是
杨伍华
2008年2 月1 日
通过
基于Web的考试系统新方案
是
陈晓立
2006年3 月9 日
通过
基于J2EE的分布式事务研究
是
田令洋
2006年1 月26日
通过
个性化协同学习环境本体的研究
期刊名称:交通与计算机
是否为核心期刊
作者姓名
投稿日期
审稿结果
文章名称
是
田令洋
2007年4 月8 日
未通过
CORBA和Java的结合使用
是
田令洋
2008年1 月3 日
未通过
高速公路通信系统的整合利用初探
„„
是
杨晓光
2006年3 月1 日
未通过
基于VC与Ansys的参数化有限元分析
第五篇:教学管理系统SQL练习答案
现在有一教学管理系统,具体的关系模式如下:
Student(no, name, sex, birthday, class)Teacher(no, name, sex, birthday, prof, depart)Course(cno, cname, tno)Score(no, cno, degree)其中表中包含如下数据: Course表:
Score表:
Student表:
Teacher表:
根据上面描述完成下面问题:
(注意:注意保存脚本,尤其是DDL和DML,以便进行数据还原)DDL 1.写出上述表的建表语句。
命te,classint);
令:createtableStudent(noint,namevarchar(14),sexvarchar(2),birthdaydacreatetableTeacher(noint,namevarchar(14),sexvarchar(2),birthdaydate,profvarchar(10),departvarchar(10));createtableCourse(cnovarchar(8),cnamevarchar(14),tnoint);createtableScore(noint,cnovarchar(8),degreeint);
DML 2.给出相应的INSERT语句来完成题中给出数据的插入。
命令:
insertintoStudentvalues(5001,'李勇','男','1987-7-22',95001);insertintoStudentvalues(5002,'刘晨','女','1987-11-15',95002);insertintoStudentvalues(5003,'王敏','女','1987-10-5',95001);insertintoStudentvalues(5004,'李好尚','男','1987-9-25',95003);insertintoStudentvalues(5005,'李军','男','1987-7-17',95004);insertintoStudentvalues(5006,'范新位','女','1987-6-18',95005);insertintoStudentvalues(5007,'张霞东','女','1987-8-29',95006);insertintoStudentvalues(5008,'赵薇','男','1987-6-15',95007);insertintoStudentvalues(5009,'钱民将','女','1987-6-23',95008);insertintoStudentvalues(5010,'孙俪','女','1987-9-24',95002);insertintoStudentvalues(108,'赵里','男','1987-6-15',95007);insertintoStudentvalues(109,'丘处机','男','1987-6-23',95008);insertintoStudentvalues(107,'杨康','男','1987-9-24',95001);
insertintoTeachervalues(1,'李卫','男','1957-11-5','教授','电子工程系');insertintoTeachervalues(2,'刘备','男','1967-10-9','副教授','math');insertintoTeachervalues(3,'关羽','男','1977-9-20','讲师','sc');insertintoTeachervalues(4,'李修','男','1957-6-25','教授','elec');insertintoTeachervalues(5,'诸葛亮','男','1977-6-15','教授','计算机系');insertintoTeachervalues(6,'殷素素','女','1967-1-5','副教授','sc');insertintoTeachervalues(7,'周芷若','女','1947-2-23','教授','sc');insertintoTeachervalues(8,'赵云','男','1980-6-13','副教授','计算机系');insertintoTeachervalues(9,'张敏','女','1985-5-5','助教','sc');insertintoTeachervalues(10,'黄蓉','女','1967-3-22','副教授','sc');insertintoTeachervalues(11,'张三','男','1967-3-22','副教授','sc');
insertintoCoursevalues('3-101','数据库',1);insertintoCoursevalues('5-102','数学',2);insertintoCoursevalues('3-103','信息系统',3);insertintoCoursevalues('3-104','操作系统',4);insertintoCoursevalues('3-105','数据结构',5);insertintoCoursevalues('3-106','数据处理',5);insertintoCoursevalues('4-107','pascal语言',6);insertintoCoursevalues('4-108','C++',7);insertintoCoursevalues('4-109','java',8);insertintoCoursevalues('3-245','数据挖掘',10);insertintoCoursevalues('3-111','软件工程',11);insertintoScorevalues(5001,'3-105',69);insertintoScorevalues(5001,'5-102',55);insertintoScorevalues(5003,'4-108',85);insertintoScorevalues(5004,'3-105',77);insertintoScorevalues(5005,'3-245',100);insertintoScorevalues(5006,'3-105',53);insertintoScorevalues(5003,'4-109',45);insertintoScorevalues(5008,'3-105',98);insertintoScorevalues(5004,'4-109',68);insertintoScorevalues(5010,'3-105',88);insertintoScorevalues(5003,'3-105',98);insertintoScorevalues(5005,'4-109',68);insertintoScorevalues(5002,'3-105',88);insertintoScorevalues(107,'3-105',98);insertintoScorevalues(108,'4-109',68);insertintoScorevalues(109,'3-105',88);insertintoScorevalues(109,'4-109',80);insertintoScorevalues(107,'3-111',88);insertintoScorevalues(5003,'3-111',80);
单表查询
3.以class降序输出student的所有记录(student表全部属性)
命令:select*fromStudentorderbyclassdesc;
4.列出教师所在的单位depart(不重复)。
命令:selectdistinctdepartfromTeacher;
5.列出student表中所有记录的name、sex和class列
命令:selectname,sex,classfromStudent;
6.输出student中不姓王的同学的姓名。
命或
令:selectnamefromStudentexceptselectnamefromStudentwherenamelike'王%';selectnamefromStudentwherenamenotlike'王%';
7.输出成绩为85或86或88或在60-80之间的记录(no,cno,degree)
命令:selectno,cno,DEGREEfromScorewheredegree=85 ordegree=86 ordegree=88 ordegreebetween 60 and 80;
8.输出班级为95001或性别为‘女’的同学(student表全部属性)
命令:select*fromStudentwhereclass=95001 orsex='女';
9.以cno升序、degree降序输出score的所有记录。(score表全部属性)
命令:select*fromScoreorderbycnoasc,degreedesc;
10.输出男生人数及这些男生分布在多少个班级中
命令:selectCOUNT(*),count(distinctclass)fromStudentwheresex='男';
11.列出存在有85分以上成绩的课程编号。
命令:selectdistinctcnofromScorewheredegree>85;
12.输出95001班级的学生人数
命令:selectCOUNT(*)fromStudentwhereclass=95001;
13.输出‘3-105’号课程的平均分
命令:selectavg(cast(degreeasfloat))fromScorewherecno='3-105';
14.输出student中最大和最小的birthday日期值
命令:selectMAX(birthday),MIN(birthday)fromStudent;
15.显示95001和95004班全体学生的全部个人信息(不包括选课)。(student表全部属性)
命令:select*fromStudentwhereclass=95001 orclass=95004;