《数据库原理及应用》第五章SQL查询
SQL数据库_数据查询

例48. 查询修了'c02'课程且成绩高于 此课程的平均成绩的学生的学号和成绩.
SELECT Sno , Grade FROM SC WHERE Cno = 'c02' and Grade > ( SELECT AVG(Grade) from SC WHERE Cno = 'c02')
使用子查询进行存在性测试
成绩 78 77 67 89 78 65 69 90
例.查询学生的修课情况,要求列出学生的学号, 名字,所修课的课程号和成绩. SELECT 学号,姓名, 课程号, 成绩 因为两张表都 有学号,所以此 FROM 学生 JOIN 选课 处的学号必须 ON 学生.学号 = 选课.学号 加上表名,以示
区别.
SELECT Sno, Sname FROM Student WHERE Sno IN ( SELECT Sno FROM SC WHERE Cno IN (SELECT Cno FROM Course WHERE Cname = '数据库基础') )
使பைடு நூலகம்子查询进行比较测试
带比较运算符的子查询指父查询与子查 询之间用比较运算符连接, 当用户能确切知道内层查询返回的是单 值时,可用>,<,=,>=,<=,<>运算 符.
数据库原理与应用
数据查询功能
1 2 3 4 查询语句的基本结构 简单查询 多表连接查询 子查询
查询语句基本格式
SELECT <目标列名序列> --需要哪些列 FROM <数据源> --来自于哪些 表 [WHERE <检索条件>] --根据什么条件 [GROUP BY <分组依据列>] [HAVING <组提取条件>] [ORDER BY <排序依据列>]
数据库原理与应用SQL Server 2005项目教程 第五章

项目目标:
学习完本章后,读者应该完成以下任务:使用SSMS和T-SQL语句, 创建、删除 和修改主键约束、外键约束、唯一性约束、默认值约束、检查约束、空值约束;使用默 认值和规则等方法进行数据完整性管理。
5.1 数据完整性的概念与实施
5.1.1 数据完整性的概念
数据库的完整性是指数据的正确性、有效性和相容性,防止错误 数据进入数据库,保证数据库中数据的质量。正确性是指数据的 合法性;有效性是指数据是否属于所定义的有效范围;相容性是 指描述同一现实的数据应该相同。 1.实体完整性
默认值约束是指当向数据库中的表插入数据时,如果用户没 有明确给出某字段的值时,SQL Server 2005自动为该列输 入值。
默认值约束创建方法有两种:
1.使用SSMS管理默认值约束 2.使用T-SQL管理约束
5.2.4 检查(CHECK)约束
检查约束通过限制输入到列中的值来强制域的完整性。可以通过 任何基于逻辑运算符返回结果TRUE或FALSE的逻辑(布尔)表达式 来创建检查约束。对单独一列可使用多个检查约束。按约束创建 的顺序对其取值。只有当INSERT、UPDATE时才对检查约束进行检 查。
1.使用SSMS管理检查约束 2.使用T-SQL管理检查约束
5.2.5 主键(PRIMARY KEY)约束
主键约束标识字段或字段集,这些字段或字段集的值唯一 地标识表中的记录。
1.使用SSMS创建主键约束
2.使用T-SQL创建主键约束
5.2.6 唯一性(UNIQUE)约束
唯一性约束可以确保表中在非主键字段中不能有重复值。
到用户列或别名数据类型上,它才能为列和别名数据类型提供
默认值。
5.4.2 创建默认值
使用CREATE DEFAULT语句可以创建默认值,其基本语法如下: CREATE DEFAULT 默认值名 AS 默认值表达式
数据库原理与应用教程第四版 第五章答案

免责声明:私人学习之余整理,如有错漏,概不负责1.视图的优点简化数据查询语句、使用户能从多角度看待同一数据、提高了数据的安全性、提供了一定程度的逻辑独立性2.使用视图可以加快数据的查询速度吗?为什么?不对。
其本质上还是执行视图内部的查询语句,通过视图查询数据时,都是转换为对基本表的查询,其简化了数据查询语句但是并不能加快数据查询速度。
3.写出创建满足以下要求的视图的SQL语句。
1)查询学生的学号、姓名、所在系、课程号、课程名、课程学分。
CREATE VIEW v1(Sno,Sname,Sdept,Cno,Cname,Credit)ASSELECT s.Sno,Sname,Sdept,o,Cname,CreditFROM Student s JOIN SC ON s.Sno = SC.Sno JOIN Course c ON o = o2)查询学生的学号、姓名、选修的课程名和考试成绩。
CREATE VIEW v2(Sno,Sname,Cname,Grade)ASSELECT s.Sno,Sname,Cname,GradeFROM Student s JOIN SC ON s.Sno = SC.Sno JOIN Course c ON o = o3)统计每个学生的选课门数,列出学生学号和选课门数。
CREATE VIEW v3(Sno,选课门数)ASSELECT s.Sno,COUNT(*)FROM Student s JOIN SC ON s.Sno = SC.SnoGROUP BY Sno4)统计每个学生的修课总学分,列出学生学号和总学分。
(成绩大于等于60)CREATE VIEW v4(Sno,总学分)ASSELECT s.Sno,SUM(Credit)FROM Student s JOIN SC ON s.Sno = SC.Sno JOIN Course c ON o = oWHERE Grade > 60GROUP BY Sno5)查询计算机系Java考试成绩最高的学生的学号、姓名和Java考试成绩。
Chapter5-大数据技术原理与应用-第五章-NoSQL数据库-pdf

《大数据技术原理厦与门应大用学》计算机科学系 厦门大学计算机科学系
林子雨 2015年ziy版ulin@
提纲
• 5.1 NoSQL简介 • 5.2 NoSQL兴起的原因 • 5.3 NoSQL与关系数据库的比较 • 5.4 NoSQL的四大类型 • 5.5 NoSQL的三大基石 • 5.6 从NoSQL到NewSQL数据库 • 本章小结
键/值对
典型应用
内容缓存,比如会话、配置文件、参数、购物车等
优点
扩展性好,灵活性好,大量写操作时性能高
缺点 使用者
无法iak)、BestBuy(Riak)、 Twitter(Redis和Memcached)、StackOverFlow(Redis)、 Instagram (Redis)、Youtube(Memcached)、Wikipedia (Memcache育计算机规划教材 《大数据技术原理与应用 ——概念、存储、处理、分析与应用》 (2015年6月第1版) 厦门大学 林子雨 编著,人民邮电出版社 ISBN:978-7-115-39287-9
欢迎访问《大数据技术原理与应用》教材官方网站: /post/bigdata
Dataset
Document_id-1
Document-1
Document_id-2
Document-2
Document_id-3
Document-3
Document_id-4
Document-4
文档数据库
KeyValue Node1
Key-Value2 Key-Value1
KeyValue Node3
数据完整性
容易实现
很难实现
任何一个RDBMS都可以很容易实现数据完整性,比如通过主键或 者非空约束来实现实体完整性,通过主键、外键来实现参照完整 性,通过约束或者触发器来实现用户自定义完整性 但是,在NoSQL数据库却无法实现
数据库原理与应用 实验报告 第7次 SQL语言(5)数据查询—集合查询与总结

《数据库原理及应用》电子实验报告题目:SQL语言(5)数据查询—集合查询与总结日期20 . . 姓名QQ实验环境:Windows XP,Sql Server2005实验目的:1.理解集合查询的意义2.了解标准SQL直接支持的集合操作种类3.了解一般商用数据库支持的集合操作种类4.掌握并、交、差操作5.总结并深入体会SQL查询实验内容:1.集合查询1)嵌套查询的定义2)标准SQL直接支持的集合操作种类3)一般商用数据库支持的集合操作种类2.采用的数据库表1)库表结构定义2)库表记录3.并操作(写出题目、关系代数表达式和sql语句)1)并操作的形式2)实例操作【实例1】【实例2】4.交操作1)交操作的意义2)实例操作(写出题目、关系代数表达式和sql语句及sql环境运算截图)【实例1】【实例2】【实例3】5.差操作(写出题目、关系代数表达式和sql语句及sql环境运算截图)1)差操作的意义2)实例操作【实例1】【实例2】【实例3】【实例4】6.对集合操作结果的排序(写出题目、sql语句及sql环境运算截图)1)EXISTS谓词2)NOT EXISTS谓词3)全称量词 的实现4)实例操作【实例1】【实例2】【实例3】【实例4】7.SQL查询的总结1)SELECT语句的一般格式2)……(自由总结、深入体会)3)……(自由总结、深入体会)……完成情况:1 完成了***************2 完成了****************出现的问题:(小四宋体)1 在完成**任务时,遇到了**问题,解决思路是****,解决步骤时*****。
2 在完成**任务时,遇到了**问题,解决思路是****,解决步骤时*****。
*****************。
《数据库原理及应用》课程中SQL语句的教学方法探析

在 数 据 库 中 ,数 据 查 询 是 通 过 S L C E E T语 句 来 完 成 的 。
SLC E E T语 句 不仅 可 以从数 据库 中按 用户 要求 检索 数据 , 并将
查询结 果 以表格 的形式 返 回 , 可以从 一个或 多个 表 中选取特 还 定 的行 和列 。 因为查 询和 检索 数据是 数据库 管理 中最重要 的功 能 , IS L C 语 句在 S L 所 L EE T ( Q 中也是 工作量 最大 的部分 。
2 I ERT语 句 NS
列, 并将 结果放 到临 时的表 中 。 在直 接S (i c S L 中 , QL dr t Q ) 它将 e
结果 显示 在 终端 的显 示 屏上 ,或 者将 其 发送 到 打 印机或 文件 中 , 可 以结合 其它S L ̄句 来将 结果 放到 一个 已知名称 的表 也 Q i
中。 E E T 句功 能十分 强大 , S LC 语 虽然 表 面上看来 它只 用来 完成
如想查 看雇 员工作 部 门的列表 . 要编写 的S L 需 Q 查询 为 :
S EC EL T BRANCH OFF C R0M IE F EMP LOYE ; ES
由于 在S L C 语句 中只指定 了一 个列 ,所 以结果 表 中也 EET 只 有一个 列 。注意结果 表 中具有重 复 的行 , 是 因为有 多个雇 这
的。 如果 希望 以字母 表顺序 将结 果列 出又该 怎么做 呢?只要使
用 O D RB R E Y子句 就可 以按照升 序或 降序来 排列 结果 :
S EC S I T BRANC EL T DI T NC H OF I E FC F ROM MPL E OYEE S 0RDER BY BRANCH F CE AS OF I C;
数据库原理及应用教案

数据库原理及应用教案第一章:数据库概述1.1 数据库的基本概念理解数据库的定义理解数据和信息的关系理解数据模型的概念1.2 数据库系统的结构理解数据库系统的组成部分理解数据库管理系统的作用理解应用程序和数据库之间的交互过程1.3 数据库的发展历史了解数据库的起源和发展过程了解关系数据库和面向对象数据库的区别了解当前数据库技术的发展趋势第二章:关系数据库理论2.1 关系模型的基本概念理解关系表的定义和表示方法理解关系模型的特点和优势理解实体和属性的概念2.2 关系的操作理解选择、投影和连接操作的含义和应用掌握关系代数和SQL语言的使用方法理解关系的性质和操作的限制条件2.3 关系的完整性约束理解实体完整性和参照完整性的概念理解主键和外键的作用和定义掌握关系的完整性约束的实现方法第三章:数据库设计3.1 需求分析理解需求分析的目的和重要性掌握需求分析的方法和技术理解数据字典和数据流图的使用3.2 概念设计理解概念设计的概念和目的掌握实体-关系模型的表示方法理解概念设计到逻辑设计的转换方法3.3 逻辑设计理解逻辑设计的概念和目的掌握关系模型的设计方法理解关系数据库设计的原则和方法第四章:数据库管理4.1 数据库的创建和管理理解数据库的创建和管理过程掌握SQL语言创建和管理数据库的方法理解数据库的备份和恢复的概念和方法4.2 数据库的安全性和完整性理解数据库安全性的概念和重要性掌握数据库的权限管理和访问控制方法理解数据库完整性的概念和实现方法4.3 数据库性能优化理解数据库性能优化的概念和方法掌握查询优化和索引的使用方法理解数据库缓存和分区的概念和方法第五章:数据库应用系统开发5.1 数据库应用系统的设计和实现理解数据库应用系统的设计和实现过程掌握数据库应用系统的设计原则和方法理解应用程序和数据库之间的交互过程5.2 常用数据库开发工具了解常用的数据库开发工具的概念和功能掌握数据库开发工具的使用方法理解不同开发工具的优缺点和适用场景5.3 数据库应用系统的运行和维护理解数据库应用系统的运行和维护的重要性掌握数据库应用系统的运行和维护方法理解故障排除和性能监控的概念和方法第六章:SQL语言6.1 SQL语言基础理解SQL语言的作用和特点掌握SQL语言的基本语法和操作理解数据定义语言(DDL)和数据操作语言(DML)的概念6.2 SQL数据查询掌握SQL查询语句的编写和执行理解选择、投影和连接操作的SQL实现掌握子查询和联合查询的使用方法6.3 SQL数据定义和操纵掌握SQL语言创建表、视图和索引的方法掌握插入、更新和删除数据的SQL语句理解SQL语言的数据类型和约束定义第七章:数据库事务管理7.1 事务的基本概念理解事务的定义和特性掌握事务的ACID属性理解事务的作用和重要性7.2 事务管理理解事务的提交和回滚掌握事务控制语句的使用理解事务隔离级别的概念和作用7.3 事务日志和恢复理解事务日志的作用和结构掌握数据库的恢复机制理解崩溃后的数据库恢复过程第八章:数据库高级特性8.1 数据库触发器和存储过程理解触发器和存储过程的定义和作用掌握创建和调用触发器和存储过程的方法理解触发器和存储过程在数据完整性管理中的应用8.2 数据库视图和索引理解视图的概念和作用掌握创建和使用视图的方法理解索引的原理和作用掌握索引的创建和管理方法8.3 数据库分区理解分区的作用和原理掌握分区的创建和管理方法理解分区对数据库性能的影响第九章:数据库性能优化9.1 查询优化理解查询优化的目的和方法掌握查询优化技术理解查询优化器的工作原理9.2 数据库索引设计理解索引的作用和类型掌握索引的设计原则和方法理解索引维护和更新策略9.3 数据库缓存和并发控制理解数据库缓存的作用和原理掌握缓存优化策略理解并发控制的重要性掌握并发控制技术第十章:数据库应用案例分析10.1 数据库应用案例介绍分析实际数据库应用案例理解案例中数据库的设计和实现方法理解案例中数据库的应用场景和效果10.2 数据库应用案例分析分析案例中的数据库需求和设计分析案例中的数据库管理和维护方法分析案例中的数据库性能优化措施10.3 数据库应用案例实践基于案例进行数据库设计和实现实践案例中的数据库管理和维护方法实践案例中的数据库性能优化措施重点和难点解析重点环节1:关系模型的基本概念关系表的定义和表示方法关系模型的特点和优势实体和属性的概念重点环节2:关系的操作选择、投影和连接操作的含义和应用关系代数和SQL语言的使用方法关系的性质和操作的限制条件重点环节3:关系的完整性约束实体完整性和参照完整性的概念主键和外键的作用和定义关系的完整性约束的实现方法重点环节4:数据库的创建和管理数据库的创建和管理过程SQL语言创建和管理数据库的方法数据库的备份和恢复的概念和方法重点环节5:数据库的安全性和完整性数据库安全性的概念和重要性数据库的权限管理和访问控制方法数据库完整性的概念和实现方法重点环节6:数据库性能优化查询优化和索引的使用方法数据库缓存和分区的概念和方法数据库性能优化的概念和方法重点环节7:数据库事务管理事务的定义和特性事务的ACID属性事务的提交和回滚重点环节8:数据库高级特性触发器和存储过程的定义和作用视图和索引的原理和作用分区对数据库性能的影响重点环节9:数据库性能优化查询优化技术索引的设计原则和方法缓存优化策略重点环节10:数据库应用案例分析数据库应用案例的需求分析和设计数据库应用案例的管理和维护方法数据库应用案例的性能优化措施全文总结和概括:本文主要分析了数据库原理及应用教案中的重点环节,包括关系模型的基本概念、关系的操作、关系的完整性约束、数据库的创建和管理、数据库的安全性和完整性、数据库性能优化、数据库事务管理、数据库高级特性、数据库应用案例分析等。
数据库系统原理与应用第五讲

第一范式 第二范式 第三范式 BCNF 第五范式
text tetexxtt
范式间的关系
4.3.2 第一范式(1NF)
若关系R的每一个属性值为单一的, 则R属于第一阶规 范化形式, 简称为1NF。
下面是一个不符合第一范式的关系:
商店编号 商店名称
地址
电话
商品名称 大类编号 大类名
价格
1001
华联超市 淮海中路 64331269 苹果、葡萄、 0101
③ 属性X与Y有m:n的联系,则X与Y之 间不存在函数依赖关系。
4.2.7函数依赖与属性关系
③ 函数依赖不是指关系模式R的某个或某 些关系实例满足的约束条件,而是指 关系模式R的所有实例均要满足的约束 条件。
④ 当XY时,Y值由X值决定,X也称为 决定因素
4.2.8 Armstrong公理
从已知的一些函数依赖,可以推导出另外一 些函数依赖,这就需要一系列推理规则。函 数依赖的推理规则最早出现在1974年 W.W.Armstrong 的论文里,这些规则常 被称作“Armstrong 公理”,该公理成为 关系模式分解的算法基础。
4.1 问题的提出
设有如下学生成绩表,用关系S表示:
S(学号# , 姓名, 性别, 课号 #, 课程名, 成绩 )
主码为(学号,课号)
该关系模型存在如下问题
⑴ 数据冗余 ⑵ 不一致性━━比如可能只更新部分字段。 ⑶ 插入异常━━若某学生未选课程,则无法插入学 生基本信息,因为主码属性课号不能为空。 ⑷ 删除异常━━若删所有成绩时,把学生所有属性 也删了。
4.2.1函数依赖的基本定义
S(学号, 姓名, 性别, 课号, 课程名, 成绩)
学号→姓名
学号→性别 课号→课程名
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SQL语言
SQL功能 命令动词
数据查询
数据定义 数据操纵
SELECT
CREATE、DROP、ALTER INSERT、UPDATE、DELETE
数据控制
GRANT、REVOKE
SQL语言
SQL语言的优点在于SQL不是面向过程的 语言,使用SQL语言只需描述做什么,而 不需要描述如何做,为使用者带来极大的 方便。本章将以讨论SQL的数据查询语言 为主,同时介绍数据定义语言和数据操纵 语言。本章中大部分例题使用“学生管理” 数据库,并假定数据库在Access的当前目录 下。
简单查询----选择记录
WHERE子句通过指定查询条件,可以在表中找出满足条件 的记录。查询条件可以是任意复杂的逻辑表达式。 当WHERE子句需要指定一个以上的查询条件时,要使用逻 辑运算符AND、OR和NOT将其连接成复合的逻辑表达式。 其优先级由高到低为:NOT、AND、OR,可以使用括号改 变优先级。 条件查询还可以使用LIKE或NOT LIKE进行部分匹配查询。* 表示任意长度的字符串;?表示任意单个字符。 在查询中还可以使用查询谓词,查询谓词IN 和NOT IN用于 检索属于(IN)或不属于(NOT IN)指定集合的记录。 例10 查询成绩在60分以下(不包括60分)、90分以上(含 90分)学生的学号。
连接查询(多表查询)
例13 查询会计系学生选修课程及成绩,要求查询结果中含 属性学号、姓名、课程名称和成绩。 SELECT student.学号,姓名,课程名称,成绩 FROM student,course,grade WHERE 所属院系='会计学院' and student.学号=grade. 学号 and grade.课程编号=course.课程编号 这个查询涉及到两个表,查询所要求的结果来自两个表,查 询的条件也涉及到两个表,所以有“FROM student,grade”; 这两个表之间是有联系的,这种联系是通过父表的主关键字 (student中的学号)和子表的外部关键字(grade表的学号) 建立的,所以有命令子句WHERE中的筛选条件“student. 学号=grade.学号”。 由于student表和grade表都有学号属性,因此在SELECT子 句中要用前缀的形式“student.学号”指明取自哪个表中的 学号;此例中用“grade.学号”的形式,查询结果是一样的。
第六章:SQL查询
SQL语言
结构化查询语言SQL(Structured Query Language)是DBMS提供的对数据库进行操作
的语言,称为结构化查询语言。SQL已经成为 关系数据库语言的国际标准。
功能: 数据定义语言(DDL, Data Definition Language) 数据查询语言(DQL, Data Query Language) 数据操纵语言(DML, Data Manipulation Language) 视图控制语言(DCL,Data Control Language)
还可以利用空值查询: 例12 查询所有选修了课程,但没有参加考试(成 绩为“空”)的学生学号。
SELECT 学号 FROM grade WHERE 成绩 IS NULL 比较下面的命令: SELECT 学号 FROM grade WHERE ISNULL(成绩)
连接查询(多表查询)
两表连接:SQL的连接操作是通过相关联的表间 行的匹配而产生的结果。 要连接的表在From子句后列出,表名之间用逗号 分隔,连接条件利用Where子句进行说明。 如果缺少Where子句的条件说明,完成的连接是 两表的笛卡尔积。 注意:在输出的字段列中,如果该字段在连接的 两表中均存在,则必须在字段前面标明该字段的 出处 多表连接的结构与两表连接相同。 多表查询是指SELECT命令的查询内容或查询条 件或查询内容和查询条件同时涉及到数据库中相 关的多个表。
连接查询(多表查询)
例16 查询成绩在60分以上(包括60分)、90分以下 (含90分)学生的学、姓名、课程名称和成绩
SELECT student.学号,姓名,课程名称,成绩 FROM student,grade,course WHERE grade.课程编号=course.课程编号 and student.学号=grade.学号 And 成绩 BETWEEN 60 AND 90 SELECT student.学号,姓名,课程名称,成绩 FROM student,grade,course ; WHERE grade.课程编号=course.课程编号 and student.学号=grade.学号 ; And 成绩>=60 and 成绩<=90
查询计算函数的格式及功能
函数格式 COUNT(*) SUM(字段名) AVG(字段名) MAX(字段名) MIN(字段名) 函数功能 计算记录个数 求字段名所指定字段值的总和 求字段名所指定字段的平均值 求字段名所指定字段的最大值 求字段名所指定字段的最小值
简单查询----选择字段
Select <字段名列表> from <表名> where <条件> 例1 查询学生姓名、性别和所在院系
简单查询----选择记录
SELECT中用于完成选择记录(查询条件)的命令子句是: [WHERE <筛选条件> [AND | OR <筛选条件> ...]]
例7 查询会计学院学生的学号,姓名和院系属性。 SELECT 学号,姓名,所属院系 FROM student WHERE 所属院系="会计学院" 例8 查询学分少于3(不含3学分)的课程名称,课程性质 和学分。 SELECT 课程名称,课程性质,学分 FROM course WHERE 学分<3 例9 查询会计学院的非党员学生。 SELECT 学号,姓名,所属院系,政治面貌 FROM student WHERE 所属院系="会计学院" and 政治面貌 <>"党员"
Select语句说明
SELECT说明要查询的内容(指字段或属性); FROM指明从哪几个表中查询; WHERE说明查询的筛选条件,即选择元组的条 件; GROUP BY短语用于对查询结果进行分组,即对 查询进行分类统计; HAVING短语必须跟随GROUP BY使用,它用来 限定分组必须满足的条件; ORDER BY短语用来对查询结果进行排序, Asc 为升序,Desc为降序,系统默认为升序
数据查询—select语句
Select [All | Distinct] <列名>|<目标列表达式> |<函数>[,……] From <表名或视图名>[,……] [Where <条件表达式>] [Group By <列名1> [Having <条件表达式>]] [Order By <列名2> [Asc] [Desc] 功能:从指定的表或视图中,创建一个由指定范围、满足条 件、按某字段分组、按某字段排序的指定字段组成的新记录 集。 All:查询结果是表的全部记录 Distinct:查询结果不包括重复行的记录集 From<表或视图名>:查询的数据来源
简单查询----选择字段
例4 查询学生的姓名和பைடு நூலகம்龄,列出清单。 SELECT 姓名,year(date())-year(出生日期) AS 年龄 FROM student “AS 年龄”表示为计算结果定义一个属性。 例5 所有课程的学分增加50%,重新计算各门课程的学分并列 出清单。 SELECT 课程名称, INT(学分*(1+0.5)) AS 新学分 FROM course SELECT 课程名称, 学分,INT(学分*(1+0.5)) AS 新学 分 FROM course 例6 查询学生的姓名,所属院系,出生日期和性别。 SELECT 姓名,所属院系,出生日期,性别 FROM student 查询与表中属性顺序无关,通过查询可得到新的属性顺序。
连接查询(多表查询)
例14 查询有不及格成绩学生的学号和姓名。 SELECT DISTINCT student.学号,姓名 FROM student,grade WHERE 成绩<60 and student.学号=grade.学号 比较下面的命令: SELECT student.学号,姓名 FROM student,grade WHERE 成绩<60 and student.学号=grade.学号 查询谓词:利用空值查询。 例15 查询所有选修了课程,但没有参加考试的学生的院系, 姓名,课程名称和成绩。 SELECT 所属院系,姓名,课程名称,成绩 FROM student,grade,course WHERE student.学号=grade.学号 and grade.课程编号=course.课程编号 and 成绩 IS
SELECT 姓名,性别,所属院系 FROM student 注:SELECT指出要查询的属性,FROM指出从哪个表查询。
例2 查询student表中所有字段和记录.SELECT * FROM student
例3 查询已经选课的学生学号。 SELECT DISTINCT 学号 FROM grade DISTINCT选项的作用是去掉查询结果中的重复值,比较下 面的命令: SELECT 学号 FROM grade
SELECT 学号,成绩 FROM grade WHERE 成绩<60 or 成绩>=90
简单查询----选择记录
例11 查询所有信息学院和金融学院的学生信息。
SELECT * FROM student WHERE 所属院系 IN („信息学院’,„金融学院') 比较下面的命令: SELECT * FROM student WHERE 所属院系=„信息 学院’ or 所属院系=„金融学院'