SQL读书笔记
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1. 数据库的三个范式
a) 1nf:强调的是列的原子性,即列不能够再分成其他几列。
b) 2nf:首先是 1nf,另外包含两部分内容,一是表必须有一个主键;二是没有包
含在主键中的列必须完全依赖于主键,而不能只依赖于主键的一部分。(单一主键或者
所有列都是主键的满足1nf的数据库一定满足2nf)
c) 3nf:首先是 2nf,另外非主键列必须直接依赖于主键,不能存在传递依赖。即
不能存在:非主键列 a 依赖于非主键列 b,非主键列 b 依赖于主键的情况。
2. 创建外键
3. 进阶select
1. case语句
2. order by 语句(可以在后面加desc)
多列排序:order by 后面依次加入要排序的行
3.
统计函数:sum, max, min, avg等 4. 分组关键词:group by。 5. 统计行数count()
6. 只选择不重复的:distinct数据
7. 限制结果的数量:limit(编号从1开始)或者top(可以选择前百分之几)一
个参数:结果集数量
两个参数:从第几个开始,结果集数量 8. 模糊查询:like %:匹配多个字符?:
匹配一个字符
9. 字符串限制的查询:sub_string()….
10. 数据结构转换:select case([column_name] as type) 4. 想新建表,然后把查询到的东西插入新表,应该怎么写
1.
2.
3. 3. inner join : 连接两张表
select mc.email, p.profession from my_contacts as mc inner join profession as
p
where mc.contact_id=p.prof_id select st_name, mc.first_name, s.status from my_contacts as mc inner
join status as s
where mc.contact_id=s.status_id select cs.cid, s.seeking from cs natrual join s
4. 自然联接:natural join(用于联接的两张表里有相同名称的行)
5. 子查询:在
查询中嵌套查询
1. 返回多行数据:in 或者not in
2. 返回一行数据:=
3. 判断是否大于/小于所有的数据:all
4. 判断大于返回值中最小值或者小于返回值中最大值:any/some
5. 经典例子:在我的
通讯录中,谁赚得钱最多?
6. 非关联子查询:内层查询不需要来自外层就可以独自运行
7. 例子:列出每个邮编覆
盖的地区收入最高的人
8. 关联子查询
1. 常用法:找出外层查找中,不存在在关联表里的记录
例子:找出所有在my_contacts里但是不在job_current里的人
7. 外联接
1. 更注重两张表之间的关系。
1. left outer join【左外联接】接受左边表的所有行,并用这些行和右表的行进行匹
配,特别适合一对多关系 2. 例一
与内连接不同之处:外连接一定会提供数据行,无论该行是否能在另一个表中找到匹配
行(没有则返回null,有多行则返回多行,有null的列对应的一定是右表)
3. 右外连接=左外连接+交换表的位置
4. 自引用外键:主键在同一张表里做外键
5. 自联接:与自身进行外联接
(子查询版)
8. 联合查询
1. 例一:查询三张表
篇二:sql读书笔记
sql server 读书笔记
11
级
姓名:
学号:吴江 1113011040 信息管理与信息系统
第一章:数据库系统概述
在当今信息时代,计算机应用的80%以上都是数据处理。数据处理的一个重要的环节是
数据管理,而数据技术管理的最新技术,是管理系统开发与应用的核心和基础技术!
首先是什么是数据库?在介绍数据库之前我们首先介绍下数据,数据是指存储在某一种
媒体上!能够被计算机识别的物理符号。同时数据可以描述客观事物,也可以描述抽象的事
物!数据处理也称信息管理,简单的说就是将数据转换成信息的过程!是对数据的收集,存
储,加工,分类,统计,检索和传输等一系列活动。数据处理的目的是从原始的或杂乱无章
的数据出发,根据事物之间的联系和运动规律,采用分析推理,归纳等手段,推导出对人们
有用的数据或信息作为决策的依据!
数据管理技术的发展历程也颇为复杂,首先是20世纪50年代的人工管理阶段,然后是文
件系统阶段,最后是数据库系统阶段,数据库管理系统的出现标志着书籍管理技术进入了数据
库系统阶段,数据库系统文件是在文件系统的基础上发展起开的,数据库管理系统需要在操作
系统的支持下才能工作.这就涉及到了数据库系统的组成,广义上讲,数据库是指引入数据库
后计算机系统,一般由数据库,数据库管理
系统和数据库应用系统,数据库管理人员构成.数据库管理系统的功能包括以下几方面:1.
数据定义功能,2.数据操纵功能,3.数据控制功能;4.数据库的建立和维护功能;5.数据字典,.
建立数据库系统离不开模型.下面我们就来介绍数据模型,1.是三种世界,即为现实世界,
信息世界,数据世界;2.组成要素,其中分为数据结构,数据操作和数据完整性约束,3.e-r模
型,其中有描述方法,e-r模型的作图步骤,实体内部的联系,三元实体联系.4.三种模型,其中
有层次模型,数据操作和完整性约束.网状模型,关系模型.
最后我们来讨论数据库系统结构.数据库系统体系的结构是数据库系统的一个总体的框
架,我们要从以下两个方面来看,第一是三级模式的结构,第二是二层映射,总之本章的主要内
容是使大家对数据库有一个基本的了解.
第二章,关系数据库数学模型
关系数据库是建立在关系模型的基础上,有严格的数学理论基础的数据库,关系数据库对
数据的操作除了集合代数的并,差等运算之外,更定义了一组专门的关系运算:选择,投影,连