SQL查询语句复习题1doc.docx
- 文档编号:16625447
- 上传时间:2023-07-15
- 格式:DOCX
- 页数:8
- 大小:92.52KB
SQL查询语句复习题1doc.docx
《SQL查询语句复习题1doc.docx》由会员分享,可在线阅读,更多相关《SQL查询语句复习题1doc.docx(8页珍藏版)》请在冰点文库上搜索。
SQL查询语句复习题1doc
SQL查询语句复习题
SQL查询语句复习题
新建学生-课程数据库的三个表:
学生表:
Student(Sno,Sname,Ssex,Sage,Sdept)Sno为主码;
课程表:
Course(Cno,Cname,Cpno,Credeit)Cno为主码;
学生选修表:
SC(Sno,Cno,Grade)Sno,Cno,为主码;
Student
学号
Sno姓名
Sname性别
Ssex年龄
Sage所在系
Sdept
95001李勇男20CS
95002刘晨女19IS
95003王敏女18MA
95004张立男19IS
课程号
Sno课程名
Cname先行课
Cpno学分
Credit
1数据库54
2数学2
3信息系统14
4操作系统63
5数据结构74
6数据处理2
7Pascal语言64
Course:
SC:
学号
Sno课程号
Cno成绩
Grade
95001192
95001285
95001388
95002290
95002380
一:
查询表中的列和行
1:
查询全体学生的学与姓名
2:
查询全体学生的姓名、学号、所在系。
3:
查询全体学生的详细记录
4:
查询全体学生的姓名及出生年份
5:
查询全体学生的姓名,出生年份及所在系,要用小写字母表示系
7:
查询选修了课程的学生姓名
二:
条件查询:
常用的查询条件
查询条件谓词
not+上述比较运算符
确定范围Betweenand,NotbetweenAnd,
确定集合IN,notIN
字符匹配Like,NotLike
空值IsNull.lSNOTNULL
多重条件AND,OR
1:
查询计算机系全体学生的姓名
2:
查询所有年龄在20岁以下的学生姓名及其年龄
3:
查询考试成绩有不及格的学生的学号
4:
查询年龄在20到23间的学生的姓名,系别及年龄
5:
查询年龄不在20到23间的学生的姓名,系别及年龄
6:
查询信息系(IS),数学系(MA)和计算机系(CS)学生的姓名和性别
7:
查询不是信息系(IS),数学系(MA)和计算机系(CS)学生的姓名和性别
8:
查询学号为”95001”的学生详细情况
9:
查询所有姓刘的学生的姓名,学号和性别(wherenamelike,刘%,)
10:
查询姓”欧阳”且命名为三个汉字的学生的姓名
11:
查询名字中第2个字为”阳”字的学生姓名和学号(where
snamelike1阳%')
12:
查询所有不姓刘的学生姓名
13:
查询DB_Design课程的课程号和学分(wherecnamelike'Db_Design'Escape")
14:
查询以”DB_”开头,且倒数第3个字符为i的课程的详细情况(wherecnamelike"DB_%i_'escape")
15:
查询缺少成绩的学生的学号和相应的课程号
16:
查询所有成绩的学生学号和课程号(wheregradeisnotnull)
17:
查询计算机系年龄在20岁以下的学生姓名
19:
查询全体学生情况,结果按所在系的号升序排列,同一系中的学生
按年龄降序
三:
使用集函数
count,sum,avg,max,min
1:
查询学生的总人数
2:
查询选修了课程的学生人数
3:
计算1号课程的学生平均成绩
4:
查询选修1号课程的学生最高分数
5:
求各个课程号及相应的选课人数
6:
查询选修了3门以上的课程的学生学号
四:
连接查询:
<1>等值与非等值的连接查询
在连接查询中用来连接两个有的条件称为连接条件或连接谓词,,当连接运算符号为"="时,称为等值连接,使用如,=,<,>,<=,>=,!
=连接时称非等值连接
1:
查询每个学生及其选修课程的情况
<2>自身连接
连接操作在同一个表中进行连接查询
2:
查询每一门课的间接先修课(即先修课的先修课)
五:
复合条件连接
1:
查询选修2号课程且成绩在90分以上的所有学生。
六:
嵌套查询
1:
带有谓词in的子查询
<1>查询与“刘晨”在同一个系学习的学生
<2>查询选修了课程名为“信息系统”的学生学号和姓名
2:
带有Any或all谓词的子查询
<1>查询其他系中比信息系中某一学生年龄小的学生姓名和年龄
<2>查询其他系中比信息系所有学生年龄都小的学生姓名及年龄
S3带有Exitst谓词的子查询
<1>查询所有选修了1号课程的学生姓名
<2>查询没有选修1号课程的学生姓名
<2>查询选修所有全部课程的学生姓名
<3>查询到少选修了学生95002选修的全部课程的学生号码
SQL题目
1、说明:
创建数据库
2、说明:
删除数据库
3,说明:
备份sqlserver
创建备份数据的device
—开始备份
4、说明:
创建新表
根据已有的表创建新表:
5、说明:
删除新表
6、说明:
增加一个列
注:
列增加后将不能删除。
DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。
7、说明:
添加主键:
说明:
删除主键:
8、说明:
创建索引:
删除索引
注:
索引是不可更改的,想更改必须删除重新建。
9、说明:
创建视图:
删除视图:
10、说明:
几个简单的基本的sql语句
选择:
范围插入:
删除:
范围更新:
范围查找:
语法很精妙,查资料!
排序:
总数:
求和:
平均:
最大:
最小:
11、说明:
几个高级查询运算词
A:
UNION运算符
UNION运算符通过组合其他两个结果表(例如TABLE1和TABLE2)并消去表中任何重复行而派生出一个结果表。
当ALL随UNION一起使用时(即UNIONALL),不消除重复行。
两种情况下,派生表的每一行不是来自TABLE1就是来自TABLE2o
B:
EXCEPT运算符
EXCEPT运算符通过包括所有在TABLE1中但不在TABLE2中的行并消除所有重复行而派生出一个结果表。
当ALL随EXCEPT一起使用时(EXCEPTALL),不消除重复行。
C:
INTERSECT运算符
INTERSECT运算符通过只包括TABLE1和TABLE2中都有的行并消除所有重复行而派生出一个结果表。
当ALL随INTERSECT一起使用时(INTERSECTALL),不消除重复行。
注:
使用运算词的几个查询结果行必须是一致的。
12、说明:
使用外连接
A、leftouterjoin:
左外连接(左连接):
结果集既包括连接表的匹配行,也包括左连接表的所有行。
SQL:
B:
rightouterjoin:
右外连接(右连接):
结果集既包括连接表的匹配连接行,也包括右连接表的所有行。
C:
fullouterjoin:
全外连接:
不仅包括符号连接表的匹配行,还包括两个连接表中的所有记录。
(笛卡尔积)
不错的sql语句
1、说明:
复制表(只复制结构,源表名:
a新表名:
b)法一:
法二:
2、说明:
拷贝表(拷贝数据,源表名:
a目标表名:
b)
3、说明:
跨数据库之间表的拷贝(具体数据使用绝对路径)
4、说明:
子查询(表名1:
a表名2:
b)
或者
5、说明:
显示文章、提交人和最后回复时间
6、说明:
外连接查询(表名1:
a表名2:
b)
7、说明:
在线视图查询(表名1:
a)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SQL 查询 语句 复习题 doc