当前位置:首页 >> 其它语言学习 >>

sql 语句学习资料,计算机二级考试 sql语句复习资料


1.简单查询........................................................................................................................................ 2 2.聚合函数........................................................................................................................................ 3 3. 连接查询...................................................................................................................................... 5 (1) 1. 全连接.......................................................................................................................... 5 (2)2. JOIN 连接 ................................................................................................................... 6 A.内部链接 .................................................................................................................... 6 B.外部链接 left\right\full join 链接 ........................................................................... 7 (3) UNION 语句....................................................................................................................... 8 4. GROUP BY 子句 表示分组 ....................................................................................................... 9 6. 范围比较 用于范围比较的关键字有两个:BETWEEN 和 IN。 ....................................... 10 (1)between 在什么范围之间 .................................................................................................. 10 (2)在列值范围内............................................................................................................... 11 7.比较子查询.................................................................................................................................. 11 (2) { ALL | SOME | ANY } ..................................................................................................... 12 (3)EXISTS 子查询 ................................................................................................................. 13

1

Select 查询语句
考点:(1) 简单查询。 (2) 嵌套查询。 (3) 连接查询。

1.简单查询 简单查询 (1)查询表中所有的数据 Select * from 表名 (2)带某些字段 select 字段 1,字段 2 from 表 如:查询学生的姓名从学生表中 Select 姓名 from student 如:查询学生的姓名并取别名 name1 Select 姓名 as name from student (3)排序 order by asc|desc(按升序或降 序) 实例:检索学生表中所有信息,按学号降序 排序 Select * from student order by 学号 desc (4)带条件查询 SELECT * FROM pet WHERE name = "Bowser";
2

SELECT * FROM pet WHERE birth >= "1998-1-1"; 查询总学分在 45 以上的所有男同学 Select * from student wher 性别=’男’ and 总学分>45 2.聚合函数 聚合函数 函 数 名 COUNT 说 明 求组中项数,返回 int 类型 求组中项数, 整数 求最大值 MAX MIN 求最小值 返回表达式中所有值的和 SUM 返回表达式中所有值的和 AVG 求组中值的平均值 STD 或 STDDEV 返回给定表达式中所有值 的标准差 返回给定表达式中所有值 VARIANCE 的方差 GROUP_CONCAT 返回由属于一组的列值连 接组合而成的结果 BIT_AND 逻辑或
3

BIT_OR BIT_XOR

逻辑与 逻辑异或

【例】 统计总学分在 50 分以上的人数。 SELECT COUNT(总学分) AS '总学 (总学分) 总学 分以上的人数' 分 50 分以上的人数 FROM XS WHERE 总学分 总学分>50; 【例】 求选修 101 课程的学生的最高分 和最低分。 和最低分。 SELECT MAX(成绩), MIN(成绩) (成绩) (成绩) FROM XS_KC WHERE 课程号 = '101'; 【例】 求学号 081101 的学生所学课程的 总成绩。 总成绩。 SELECT SUM(成绩 AS '课程总成绩 成绩) 课程总成绩' 成绩 课程总成绩 FROM XS_KC WHERE 学号 = '081101'; 【例】 求选修 101 课程的学生的平均成绩。 SELECT AVG(成绩 AS '课程 101 平均成 成绩) 成绩 课程 绩'
4

FROM XS_KC WHERE 课程号 = '101'; 【例】从 XS 表中检索出所有学生的信息, 并使用表别名 STUDENT。 使用如下语句: SELECT * FROM XS AS STUDENT; ● 引用多个表: 引用多个表: 如果要在不同表中查询数据,则必须在 则必须在 FROM 子句中指定多个表。 子句中指定多个表。 指定多个表时 就要使用到连接。当不同列的数据组合到 就要使用到连接 一个表中叫做表的连接。 3. 连接查询 连接的方式有以下两种。 连接的方式有以下两种。
(1) 1. 全连接

连接的第一种方式是将各个表用逗号分 这样就指定了全连接。 隔,这样就指定了全连接。也就是笛卡儿 积 【例 4.21】查找 XSCJ 数据库中所有学生 】
5

选过的课程名和课程号,使用如下语句: 选过的课程名和课程号,使用如下语句: SELECT DISTINCT KC.课程名 XS_KC. 课程名, 课程名 课程号 FROM KC, XS_KC WHERE KC. 课 程 号 =XS_KC. 课 程 号; 注意: 注意:distinct 表示查询的结果无重复行
(2)2. JOIN 连接 ) A.内部链接 .

【例】查找 XSCJ 数据库中所有学生选过 的课程名和课程号, 的课程名和课程号,使用如下语句 SELECT DISTINCT 课程名 XS_KC. 课程名, 课程号 FROM KC INNER JOIN XS_KC ON (KC.课程号 课程号=XS_KC.课程号 课程号); 课程号 课程号 【例】 用 FROM 子句的 JOIN 关键字表 达下列查询: 达下列查询:查找选修了 206 课程且成绩 分以上的学生姓名及成绩。 在 80 分以上的学生姓名及成绩。 SELECT 姓名 成绩 姓名,成绩 FROM XS JOIN XS_KC ON XS.学 学
6

号 = XS_KC.学号 学号 WHERE 课程号 = '206' AND 成 绩>=80; 【例】 用 FROM 的 JOIN 关键字表达下 列查询:查找选修了“计算机基础 计算机基础”课程且 列查询:查找选修了 计算机基础 课程且 分以上的学生学号、姓名、 成绩在 80 分以上的学生学号、姓名、课 程名及成绩。 程名及成绩。 SELECT XS.学号 姓名 课程名 成绩 学号, 学号 姓名, 课程名, FROM XS JOIN XS_KC ON XS.学号 = XS_KC.学号 学号 学号 JOIN KC ON XS_KC.课程号 = KC.课程号 课程号 课程号 WHERE 课 程 名 = ' 计 算 机 基 础 ' AND 成绩 成绩>=80 ;
B.外部链接 left\right\full . join 链接

Left

join:在查询结果中包含 join 左侧表中的所有

记录,以及右侧表中匹配的记录 Right join :在查询结果中包含 join 右侧表中的所有 记录,以及左侧表中匹配记录 Full join:完全链接

7

(3) UNION 语句

【 例 】 查 找 学 号 为 081101 和 学 号 为 081210 的两位同学的信息。 的两位同学的信息。 SELECT 学号 姓名 专业名 性别 出 学号, 姓名, 专业名, 性别, 生日期, 生日期 总学分 FROM XS WHERE 学号 '081101' 学号= UNION SELECT 学号 姓名 专业名 性别 出 学号, 姓名, 专业名, 性别, 生日期, 生日期 总学分 FROM XS WHERE 学号 '081210'; 学号=

8

4. GROUP BY 子句 表示分组 数据库中各专业名输出。 例】 将 XSCJ 数据库中各专业名输出。 SELECT 专业名 FROM XS GROUP BY 专业名 专业名; 数据库中各专业的学生数。 【例】 求 XSCJ 数据库中各专业的学生数。 SELECT 专业名 专业名,COUNT(*) AS '学生数 学生数' 学生数 FROM XS GROUP BY 专业名; 专业名 【例】 求被选修的各门课程的平均成绩和 选修该课程的人数。 选修该课程的人数。 SELECT 课程号 AVG(成绩 AS '平均成 课程号, 成绩) 成绩 平均成 学号) 选修人数' 绩' ,COUNT(学号 AS '选修人数 学号 选修人数 FROM XS_KC GROUP BY 课程号 课程号; 执行结果为: 执行结果为: 5. HAVING 子句 使用 HAVING 子句的目的与 WHERE 子 句类似, 句类似, 不同的是 WHERE 子句是用来在 子句是用来在 FROM 子句之后选择行,而 HAVING 子 子句之后选择行, 子句后选择行。 句用来在 GROUP BY 子句后选择行。
9

【例】 查找 XSCJ 数据库中平均成绩在 85 分以上的学生的学号和平均成绩。 分以上的学生的学号和平均成绩。 SELECT 学号 AVG(成绩 AS '平均成绩 学号, 成绩) 平均成绩' 成绩 平均成绩 FROM XS_KC GROUP BY 学号 HAVING AVG(成绩 >=85; 成绩) 成绩 【例】 查找选修课程超过 2 门且成绩都 分以上的学生的学号。 在 80 分以上的学生的学号。 SELECT 学号 FROM XS_KC WHERE 成绩 >= 80 GROUP BY 学号 HAVING COUNT(*) > 2; 6. 范围比较 用于范围比较的关键字有两 个:BETWEEN 和 IN。 。
(1)between 在什么范围之间

【例】 查询 XSCJ 数据库 XS 表中不在 1989 年出生的学生情况。 年出生的学生情况。 SELECT 学号 姓名 专业名 出生日 学号, 姓名, 专业名, 期
10

FROM XS WHERE 出 生 日 期 NOT BETWEEN '1989-1-1' and '1989-12-31';
(2)在列值范围内 )

表中专业名为“计算机 计算机”、 【例】 查询 XS 表中专业名为 计算机 、 “通信工程 或“无线电 的学生的情况。 通信工程”或 无线电 无线电”的学生的情况。 通信工程 SELECT * FROM XS WHERE 专业名 IN ('计算机 '通 计算机', 计算机 通 信工程', 无线电 无线电'); 信工程 '无线电 7.比较子查询 比较子查询 子查询的扩展, 这种子查询可以认为是 IN 子查询的扩展, 它使表达式的值与子查询的结果进行比 较运算,格式为: 较运算,格式为: expression { < | <= | = | > | >= | != | <> } { ALL | SOME | ANY } ( subquery ) SOME 或 ANY 是同义词,表示表达式只 是同义词, 要与子查询结果集中的某个值满足比较 的 关 系 时 , 就 返 回 TRUE , 否 则 返 回 FALSE。 。
11

查找选修了离散数学的学生学号。 【例】 查找选修了离散数学的学生学号。 SELECT 学号 FROM XS_KC WHERE 课程号 = ( SELECT 课程号 FROM KC WHERE 课程名 ='离散数学 离散数学' 离散数学 );

(2) { ALL | SOME | ANY }

【例】 查找 XS 表中比所有计算机系的学 生年龄都大的学生学号、姓名、专业名、 生年龄都大的学生学号、姓名、专业名、 出生日期。 出生日期。 SELECT 学号 姓名 专业名 出生日期 学号, 姓名, 专业名, FROM XS WHERE 出生日期 >ALL ( SELECT 出生日期 出生日期 FROM XS WHERE 专业名 ='计算机 计算机' 计算机
12

); 【例】 查找 XS_KC 表中课程号 206 的成 绩不低于课程号 101 的最低成绩的学生的 学号。 学号。 SELECT 学号 FROM XS_KC WHERE 课 程 号 = '206' AND 成 绩 >=ANY ( SELECT 成绩 FROM XS_KC WHERE 课程号 ='101' );
(3)EXISTS 子查询

EXISTS 谓词用于测试子查询的结果是否 为空表, 若子查询的结果集不为空, 为空表 , 若子查询的结果集不为空 , 则 EXISTS 返回 TRUE,否则返回 FALSE。 , 。 EXISTS 还可与 NOT 结合使用,即 NOT 结合使用, EXISTS,其返回值与 EXIST 刚好相反。 刚好相反。 , 格式为: 格式为:
13

[ NOT ] EXISTS ( subquery ) 号课程的学生姓名。 【例】 查找选修 206 号课程的学生姓名。 SELECT 姓名 FROM XS WHERE EXISTS ( SELECT * FROM XS_KC WHERE 学 号 = XS. 学号 AND 课程号 = '206' );

14


相关文章:
sql 语句学习资料,计算机二级考试 sql语句复习资料.doc
sql 语句学习资料,计算机二级考试 sql语句复习资料_其它语言学习_外语学习_教育专区。sql 语句学习资料,计算机二级考试 sql语句复习资料 ...
计算机二级和SQL语句考点.doc
计算机二级SQL语句考点_其它考试_资格考试/认证_教育专区。虽然不齐全 但有些还是蛮管用的哦 考试必用SQL语句(一)用SQL语句:列出所有与”红“颜色零件相关的...
计算机二级考试熟记SQL语句.doc
计算机二级考试熟记SQL语句_IT认证_资格考试/认证_教育专区。第一节 关系数据库标准语言 1、 SQL 概述 (1) SQL(structured query language)是结构化查询语言的...
SQL语句复习版.doc
SQL语句复习版_计算机软件及应用_IT/计算机_专业资料计算机二级VF专用 ...SQL语句大全:珍藏版 31页 免费 SQL语句学习手册实例版 12页 1下载券 喜欢...
SQL高级(超详细的SQL语言学习资料_私人收藏).doc
SQL高级(超详细的SQL语言学习资料_私人收藏)_IT/计算机_专业资料SQL高级(超详细的SQL语言学习资料_私人收藏) SQL 高级(超详细的 SQL 语言学习资料_私人收藏) ...
计算机二级VF SQL语句常考总结。.doc
计算机二级VF SQL语句常考总结。_计算机软件及应用_IT/计算机_专业资料。本人已经考过,对考试中经常用到的SQL语句总结 供大家转载学习。能背下来差不多就能过了,...
计算机二级考试vf常用sql语句.doc
计算机二级考试vf常用sql语句_IT认证_资格考试/认证_教育专区。计算机二级vf考试...计算机二级考试 vfp SQL... 2页 免费 sql 语句学习资料,计算机... 14...
数据库中SQL查询语句习题含的答案.doc
数据库中SQL查询语句习题含的答案_计算机软件及应用_IT/计算机_专业资料。数据库...(7)检索学习全部课程的学生姓名; (8)查询所学课程包含学生 S3 所学课程的...
数据库考试复习资料.doc
考试复习资料_计算机软件及应用_IT/计算机_专业资料...SQL 语句分类及其作用 数据操作语句(用于增、删、改...脚本可用来做副本,在 机器间共享,分析及学习代码。...
SQL语句复习二.doc
SQL语句复习二_IT/计算机_专业资料。一、Oracle 学习查询语句的笔记 在 Oracle ...(默认的) desc:降序 *放在 sql 语句的最后 ###排序结束###接下来是函数##...
SQL函数(超详细的SQL语言学习资料,私人收藏).doc
SQL函数(超详细的SQL语言学习资料,私人收藏)_IT/计算机_专业资料SQL高级(超详细的SQL语言学习资料,私人收藏) 适合初学者学习以及学过SQL语言的人复习参考之用 ...
sql语句复习.doc
sql语句复习_IT/计算机_专业资料考试复习 第三章:sql语言 查询成绩在
SQL语句练习及答案.doc
sage from student sql 语句练习题 2 设教学数据库 education,有三个关系: 学生关系 s(sno,sname,age,sex,sdept) ; 学习关系 sc(sno,cno,grade) ; 课程...
sql考试题.txt
sql考试题_IT/计算机_专业资料sql考试题SQL Server 2000试题一、选择题(每题...现代语言,中文, 1996 ; 141 ,国际贸易,经济, 1997 ; 142 ,国际金融,经济,...
2016全国计算机二级MYSQL考试题库(含答案).doc
2016全国计算机二级MYSQL考试题库(含答案)_IT认证_资格考试/认证_教育专区。2016...参考解析:在 MySQL 命令行客户端输入如下 SQL 语句即可实现: mysql>USE db-...
计算机 等级考 四级 数据库 常考sql语句 汇总(必须全部....txt
计算机 等级考 四级 数据库 常考sql语句 汇总(必须全部能看懂能写出_能源/化工_工程科技_专业资料。1如何去掉羞怯那层茧 计算机 等级考 四级 数据库 常考 sql ...
SQL语句学习手册实例.doc
SQL语句学习手册实例_IT/计算机_专业资料。自己归纳 SQL 语句学习手册实
SQL语句学习手册实例版.doc
SQL语句学习手册实例版_计算机软件及应用_IT/计算机_专业资料。学习手册 ASP ...(修改) UPDATE STUDENTS SET AGE = AGE+1 例 48 学生张春明在数据库课考试...
数据库期末考试复习题及答案.doc
数据库期末考试复习题及答案_计算机软件及应用_IT/...SQL 语句是 ( A. GRANT QTY ON SPJ TO '李勇'...学习(学号,课程号,分数)? 分别用关系代数表达式和 ...
六道经典SQL语句题完全掌握SQL语句.doc
六道经典SQL语句题完全掌握SQL语句_电脑基础知识_IT/计算机_专业资料。学生表 S...要求身高在 170cm 以上,考试不及格课程在 3 门以下(不包括 3 门)平均成绩在...
更多相关标签: