文档详情

06~07 - SQL语言 ②③.ppt

发布:2017-07-20约8.44千字共56页下载文档
文本预览下载声明
之前的学生表,加上约束后创建语句。对约束,要求学生知道约束的类型、作用、命名规则。要能够创建主键!其他约束到后面再详细介绍。 要特别说明一下之前的不带约束的创建是一个简化的结果,不是正常的语句可以有的状态。 * 强调表级约束和字段级约束是一样的作用 另外,NULL/NOT NULL约束只能是字段级的 * 索引简单介绍一下,不做更多说明,不要求具体语句 * 示例数据库见EM.mdf和EM.ldf,附加上即可使用,已经实现并填充好数据 创建语句在EM_Create.sql文件中,可以让学生看一下,不需要讲解 * 案例在ppt同名的sql文件中,可以演示 注意讲解一下字段别名的写法 * 强调联机丛书的作用,让学生自己去查阅资料 * 本部分重点在于WHERE所能够附加的各种条件 还有就是选择和投影的联合运用 * 重点介绍%通配符,其余几个简单提一下 强调LIKE和=的不同 * 对空值的特型也顺便强调 * 当多条件排序时,说明排序字段顺序的区别 * 提一下这个在不同数据库中语句不一样即可,对mysql、oracle等的语法不管那么多 * 对比用与不用DISTINCT关键字的差别。 对比SELECT语句与关系代数π运算的区别:SELECT语句默认不消除重复结果,而π运算必须消除 * 在条件之间可以用逻辑运算连接多个条件 条件运算优先级是 各种比较?NOT?AND ? OR 必要时添加括号调整运算顺序 逻辑运算 数据库原理与应用 * 对于字符串而言,除了直接进行比较,还可以进行模式匹配,或者叫做模糊查找 模糊查找使用 LIKE 谓词 LIKE左侧为要被检索的字段,右侧为匹配的模式,即模型字符串 模式(Pattern)中的特殊字符: %代表任意个字符(0个、1个或多个) _(下划线)代表任意一个字符 [ ]:指定范围 ([a-d]) 或集合 ([abcd]) 中的任何单个字符 [^]:不属于指定范围 ([a-d]) 或集合 ([abcd]) 的任何单个字符 字符串匹配 数据库原理与应用 * 7. 查找姓名以“陈”开头的工程师 8. 查找姓名以“言”结尾的工程师 9. 查找姓名以“张”开头以“言”结尾的工程师 10. 查找名称中带有“海”字的公司 11. 查找编号第2-3位是01,最后一位是2,其余位数不限的工程师 12. 查找姓傅、赵的工程师 13. 查找不姓傅、赵的工程师 字符串匹配 数据库原理与应用 * IN和BETWEEN都是用于范围(区间)比较的谓词 它们的左侧都是用来比较的字段,右侧是条件 IN,右侧是用括号包围的一个列表,左侧字段的值等于列表中的任意一个,则比较成立 BETWEEN,右侧是形如XX AND YY形式的区间,当左侧的值大于等于XX,小于等于YY,则比较成立 IN相当于左侧的字段逐个写=,并用OR连接 BETWEEN相当于 左侧=XX AND 左侧=YY IN和BETWEEN 数据库原理与应用 * 14. 找出地点在上海或北京的公司 两种方法 15. 找出年龄在25到30岁之间的工程师 两种方法 16. 找出14和15的相反结果 NOT的位置 IN和BETWEEN 数据库原理与应用 * 空值的运算特殊性 空值与任何值进行任何运算结果均为空值 空值与任何值进行比较,结果均为FALSE,哪怕是两个空值进行比较 因此,判定某个字段是否空值,要用专门的命令: IS NULL IS NOT NULL 空值的判定 数据库原理与应用 * 17. 分别找出年龄明确和不明确的工程师 18. 找出年龄在30岁以上,或者年龄未知的工程师 空值的判定 数据库原理与应用 * 之前的查询结果,都是按照其自然顺序排列的 自然顺序是数据在数据库中保存的物理顺序,通常为其主键顺序 我们可以在查询中通过ORDER BY子句指定查询结果的顺序 查询结果的排序 数据库原理与应用 * 19. 列出全部工程师信息,按工资排序 20. 列出全部工程师的姓名和工资,按工资由高到低排序 21. 列出全部工程师的姓名和工号,按照公司编号排序,同一个公司的按照工资从高到低排列 22. 找出年龄最小的工程师 结果排序 数据库原理与应用 * 在满足条件的情况下,如果需要选择指定个数的结果,而不是全部结果,可以使用TOP子句 TOP子句 SELECT TOP n 字段 FROM …… SELECT TOP p PERCENT 字段 FROM …… TOP子句限定了结果集中的前n个,或者前p%的结果,后面的部分被抛弃 TOP往往与ORDER共同使用 选择部分查询结果 数据库原理与应用 * 选择部分结果 23. 找出年纪最大的两个工程师 24. 找出35岁以下工资最高的工程师 数据库原理与应用 郑捷 * 选择部分结果 注意:TOP限定词是SQL Server特有的
显示全部
相似文档