3.5 集合运算 发表于 2019-10-14 更新于 2019-10-18 分类于 数据库系统概念 原书第6版 , 第一部分 关系数据库 , 第3章 SQL , 3.5 集合运算 3.5 集合运算 SQL查询 在2009年秋季学期开设的所有课程的集合 SQL查询 在2010年春季学期开设的所有课程的集合 3.5.1 并运算 union 有些SQL实现不支持union运算 为便于阅读可将两条合并的查询放在括号中 union运算会自动去除重复 union all运算会保留重复 3.5.2 交运算 intersect SQL查询 找出在2009年秋季和2010年春季同时开课的所有课程的集合 保留重复intersect all MySQL不支持intersect运算 MySQL中通过union运算实现交运算 SQL查询 找出在2009年秋季所有课程的集合 SQL查询 找出在和2010年春季开课的所有课程的集合 SQL查询 找出在2009年秋季和2010年春季同时开课的所有课程的集合 3.5.3 差运算 except SQL查询 找出在2009年秋季学期开课但不在2010年春季学期开课的所有课程 保留重复except all Oracle使用minus代替except MySQL不支持except运算符 MySQL中通过not in实现差运算 参考链接 阅读全文 »
3.4.5 where子句谓词 发表于 2019-10-13 更新于 2019-10-18 分类于 数据库系统概念 原书第6版 , 第一部分 关系数据库 , 第3章 SQL , 3.4 SQL查询附加的基本运算 3.4.5 where子句谓词 between and not between and (n元组) 比较运算符 (n元组) n元组将按字典顺序比较 所有属性相等n元组相等 SQL查询 査找Biology系讲授了课程的所有教师的姓名和他们所讲授的课程的课程号 一般形式 n元组比较形式 阅读全文 »
3.4.4 排列元组的显示次序 发表于 2019-10-13 更新于 2019-10-18 分类于 数据库系统概念 原书第6版 , 第一部分 关系数据库 , 第3章 SQL , 3.4 SQL查询附加的基本运算 3.4.4 排列元组的显示次序 order by子句 SQL查询 列出在Physics系的所有教师 desc降序 asc升序 在多个属性上排序 SQL查询 先按salary降序 若salary相同 则按姓名升序 阅读全文 »
3.4.3 select子句中的属性说明 发表于 2019-10-13 更新于 2019-10-18 分类于 数据库系统概念 原书第6版 , 第一部分 关系数据库 , 第3章 SQL , 3.4 SQL查询附加的基本运算 3.4.3 select子句中的属性说明 选中from子句结果关系中一个关系的所有属性 选中from子句结果关系的所有属性 阅读全文 »
3.4.2 字符串运算 发表于 2019-10-13 更新于 2019-10-20 分类于 数据库系统概念 原书第6版 , 第一部分 关系数据库 , 第3章 SQL , 3.4 SQL查询附加的基本运算 3.4.2 字符串运算 字符串放在单引号中 字符串中有单引号时怎么办 SQL标准中字符串大小写敏感 MySQL匹配字符串时默认不区分大小写 SQL字符串函数 like操作符对字符串进行模式匹配 SQL查询: 找出所在建筑名称中包含子串‘Watson’的所有系名 转义字符 定义转义字符 搜寻不配配 not like SQL:1999提供的similar to进行匹配 阅读全文 »
3.4 附加的基本运算 3.4.1 更名运算 发表于 2019-10-13 更新于 2019-10-18 分类于 数据库系统概念 原书第6版 , 第一部分 关系数据库 , 第3章 SQL , 3.4 SQL查询附加的基本运算 3.4 附加的基本运算 3.4.1 更名运算 as子句 重命名属性 重命名关系 将长的关系名换成短的关系名 重命名关系以便同一个关系中的元组 表别名的其他等效说法 阅读全文 »
3.3.3 自然连接 发表于 2019-10-13 更新于 2019-10-18 分类于 数据库系统概念 原书第6版 , 第一部分 关系数据库 , 第3章 SQL , 3.3 SQL查询的基本结构 3.3.3 自然连接 笛卡儿积 自然连接 SQL查询 对于大学中所有讲授课程的教师,找出他们的姓名以及所讲述的所有课程标识 之前写法 自然连接写法 from后面可以使用多个自然连接 SQL查询 列出教师的名字以及他们所讲授课程的名称 先自然连接 再笛卡儿积 全部自然连接 自然连接和笛卡儿积的区别 相同点 不同点 实例 笛卡尔积结果 自然连接结果 阅读全文 »
3.3.2 多关系查询 发表于 2019-10-13 更新于 2019-10-18 分类于 数据库系统概念 原书第6版 , 第一部分 关系数据库 , 第3章 SQL , 3.3 SQL查询的基本结构 3.3.2 多关系查询 找出所有教师的姓名,以及他们所在系的名称和系所在建筑的名称 如何查询 对应的SQL语句 两个关系中的同名属性要使用关系名作为前缀 不重名的属性不需要关系名作为前缀 多个关系查询的SQL通用形式 select from where三个子句的作用 SQL查询语句格式 查询运算各子句的执行顺序 form子句得到笛卡尔积 笛卡尔积说明 where子句限制from子句得到的笛卡尔积 理解SQL查询的结果应该是什么样的 要设置合适的where 大学数据库模式 阅读全文 »
3.3 SQL查询的基本结构 3.3.1 单关系查询 发表于 2019-10-13 更新于 2019-10-18 分类于 数据库系统概念 原书第6版 , 第一部分 关系数据库 , 第3章 SQL , 3.3 SQL查询的基本结构 3.3 SQL查询的基本结构 3.3.1 单关系查询 instructor关系模式定义如下 找出所有教师的名字 找出所有教师所在的系名 去除查询结果中的重复 select distinct 保留查询结果中的重复 select all 算术运算符 算术运算符可用于常数或者元组的属性 特定类型的算术函数 where子句 找出所有在Computer Science系并且工资超过70000美元的教师的姓名 逻辑连词 逻辑连词的运算对象是包含比较运算符的表达式 大学数据库模式 阅读全文 »
3.2.2 基本模式定义 发表于 2019-10-12 更新于 2019-10-18 分类于 数据库系统概念 原书第6版 , 第一部分 关系数据库 , 第3章 SQL , 3.2 SQL数据定义 3.2.2 基本模式定义 创建关系 create table create table命令格式 命令以分号结束 完整性约束 primary key foreign key not null SQL不允许破坏完整性约束的命令执行 主码不能为空 主码不能重复 外码要在被参照关系中存在 插入元组 insert into 删除元组 delete from 删除关系 drop table drop table 和delete from alter table 为已有的关系增加属性 alter table r add A D 从关系中去掉属性 alter table r drop A 阅读全文 »