admin 管理员组

文章数量: 1087819

Database期末复习杂记

今天开始第一次写博客,记录一下计算机学习的知识,学到什么记什么,比较杂,就当笔记本了。最近Database这门课期末考试,主要学习数据库设计软件MySQL。

1.一些概念

客户端(Clint-side):通过软件向服务器发起请求的一端叫客户端,如手机app。

服务器(The server):响应客户端请求的一端,如云服务器。

前端(Fore-end):与用户进行交互的界面,如网页。

后台(Backstage):管理数据的模块可以进行对比添加删除等多项操作的,如数据库系统。

上位机(Upper computer):主动控制的一方,如运行中的电脑。

下位机(Lower computer):被控制的一方,也是某种设备,对应上位机。

2. 图为Database development cycle

3.ER Mode

Chen's notation为图表状,包括entity和attribute。

Crow’s foot notation主流数据库内的数字表达形式,包括entity之间的关系表达包括0to0,0toMany,1to1和1toMany。

Logical design则是由图表转化的基础字符形式表达,包含PK,FPK。

Physical design在Logical design对基础上给各属性(attribute)加上了数据类型。

Implementation更加完整,强调了Primary Key和Foreign Key以及其来源。

Weak entity:Identified uniquely only by considering (the primary key of) another (owner) entity. 相关的strong entity消失的时候,weak entity也会跟着消失,无法单独存在。

目标:根据客户的要求以Chen's notation为草稿做出Crow’s foot notation与Implementation为合格。

4.MySQL实际应用

 

数学符号(>, <, >=, <=, =, !=),多个 condition 可以用 And(Λ)和 Or(V)结合起来

Nature Join:

 

  1. 先给 R S 做 cross product

  2. 在两表格中找到相同名字的 column, 如果名字相同且值也相同, 保留这一行

  3. 去掉相同的 column, 只保留一组

SQL结构:

 

 Aggregate functions:AVG(), MIN(), MAX(), COUNT(), SUM()

GROUP&HAVING:GROUP BY 将数据按照 column 分组,一般和 aggregate function 一起使用 HAVING 只能跟 GROUP BY 一起出现,相当于 GROUP BY 的 WHERE,用于 aggregate function 的筛选。

Subquery(nested query):外面一个 SELECT 里面一个 SELECT,里面 SELECT 的结果作为condition SELECT * FROM Table1 WHERE column1 = (SELECT * FROM Table2)。

ORDER BY && LIMIT && OFFSET:ORDER BY column name DESC/ASC(如不写则默认 ASC) LIMIT + constant c 只显示前 c 个,由小到大 OFFSET + constant c 跳过前 c 个。

今天暂时到这里,下次将不定时更新内存计算的复习。

本文标签: Database期末复习杂记