SQL语言课后练习[大全5篇]
第一篇:SQL语言课后练习
岳阳市湖湘认证培训学校学院路504号*************
SQL语言课后练习题
以下练习都是基于数据库XSG,及数据库表XSCJ与XSDA中操作,表结构如下:
XSCJ(学号C(10),语文N(4,1),数学 N(4,1),英语 N(4,1),计算机N(4,1),平均成绩N(4,1))
XSDA(学号C(10),姓名C(10),性别C(4),班级C(10),出生日期D,籍贯C(20),家庭情况G,简历M,照片G)
1、用SQL语句建立XSDA表,并为学号字段创建为主关键字,约束性别字段的值只能为男或为女,如果在不输入信息的情况下默认值是女。
2、用SQL语句建立XSCJ表,并与XSDA表建立联系。
3、为XSDA表增加一个学费字段,要求为货币型,约束字段有效性规则:学费必须在0至20000元
内(含),否则提示:学费错了。
4、修改XSDA表学费字段,要求学费必须在2000-20000间(含),否则提示:学费错了。
5、修改XSDA表学费字段,删除它的字段有效性规则。
6、修改XSDA表学费字段,将其改名为:学杂费。
7、修改XSDA表的籍贯字段的宽度为10。
8、删除XSDA表的学费字段。
9、将XSDA表的姓名字段和性别字段定义为候选索引,索引名为:TEMP。
10、删除XSDA表的候选索引TEMP。
11、删除XSDA表及XSCJ表。
12、在XSCJ表中插入一个元组:学号:********,语文:78,数学:68,英语:74,计算机:
90,平均成绩:77.50。
13、在XSDA表中插入一个元组:学号:********,姓名:王小辉,性别:男,出生日期:1981
年12月5日
14、在XSCJ表中为所有学生的英语成绩加10分
15、在XSDA表中为学号为:********的学生的籍贯改为岳阳市
16、删除XSDA表中学号为********的记录
17、将XSDA表复制到XSDABAK表
18、从XSG数据库中的XSDA表查所有学生的学号、姓名和班级的情况
19、从XSG数据库的XSDA表查计981班的学生的学号、姓名和班级的情况
20、从XSG数据库中的XSCJ表中查计算机成绩大于80的学生的学号
21、从XSG数据库的XSDA表查所有学生的学号、姓名和班级的情况,并按学号降序排序
22、从XSG数据库中的XSCJ表中查计算机成绩大于60的学生学号、语文、计算机和平均成绩,并按计算机的降序排序,如计算机成绩相同,按学号的升序排序
23、从XSG数据库的XSDA表查前4个学生的情况,按学号降序排序
24、从XSG数据库中的XSCJ表中查计算机成绩大于70的前40%学生的学生信息,并按计算
机的降序排序
25、从XSG数据库的XSDA和XSCJ表查所有学生的姓名、语文、数学、英语和计算机成绩。
(用两种方式,其中一种是INNER JOINON)
26、查询哪些班级有计算机成绩大于等于90分的学生
27、查询班级和学号为:********相同的学生的XSDA信息
28、查询XSDA表中的班级的个数
29、查询XSDA表中的学生的个数
30、计算XSCJ中所有学生的语文成绩的平均成绩,最高成绩,最低成绩三个字段
31、计算计981班学生的英语平均成绩
32、计算每个班级的语文平均成绩
33、求至少有两个学生的班级的语文平均成绩。最终得到两个字段为:人数,平均成绩
34、从XSDA表中查询出姓王的信息。
35、查询XSDA表中不是计981班的全部学生信息
第二篇:SQL语言
1.输出任意两个字符串变量的值(参考代码)
declare @v1 varchar(12),@V2 varchar(12)
set @v1='中国'
set @v2='你好!'
select @v1+@v2
2.为以下程序纠错
declare @v1 varchar(12),@V2 varchar(10)
set @v1='中国'
set @v2='你好!'
set @s='吗!'
select @v1+@v2+@s
3.运行以下代码,观察以下全局变量的功能
select 34@@connections 返回当前服务器的连接数目
select 1@@rowcount 返回上一条T-SQL语句影响的数据行数 select @@error返回上一条T-SQL语句执行后的错误号 select @@procid返回当前存储过程的ID号
select @@remserver 返回登录记录中远程服务器的名字 select @@spid返回当前服务器进程的ID标识
select @@version 返回当前SQL Server服务器的版本和处理器类型 select @@language 返回当前SQL Server服务器的语言
update语法大全select @@connections
4.输入以下代码并理解其含意
bggin
if 3>5
select 'true'
else print 'false'
end
go
begin
if 'a'<'A'
select 'true'
else print 'false'
end
go
begin
if '张'>'李'
select 'true'
else print 'false'
end
go
begin
if getdate()>2008-10-10
print'true'
else print'false'
end
5.附加数据库student,并进行以下操作
use student
select * from xsda
以XSDa表为例,如果平均成绩高于75分,则显示“不错!”,否则,显示“加油呀!”。
declare @av1 char(12), @av2 char(12)
set @av1='不错!'
set @av2='加油!'
if(select avg(总学分)from xsda)>75
begin
select @av1
end
else
select @av2
编写一个程序,显示每一同学的成绩等级
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论