### SQL21日自学通知识点概述 #### 第一天:SQL简介 - **SQL简史**:SQL(Structured Query Language)是一种用于管理关系型数据库的标准语言。它最初由IBM的程序员在1970年代初开发,并于1986年被国际标准化组织(ISO)采纳为标准。 - **数据库简史**:数据库技术的发展经历了层次模型、网络模型到现在的主流关系模型的过程。关系型数据库因其简单、灵活的特点而成为业界标准。 - **设计数据库的结构**:涉及选择合适的数据类型、定义主键和外键等,确保数据的一致性和完整性。 - **SQL总览**:介绍了SQL的基本语法结构和主要功能。 - **流行的SQL开发工具**:例如MySQL Workbench、SQL Server Management Studio、Oracle SQL Developer等,这些工具支持数据库管理、查询编辑等功能。 #### 第二天:查询——SELECT语句的使用 - **目标**:掌握如何构建基本的SELECT查询语句。 - **背景**:理解SQL在数据检索中的核心作用。 - **一般的语法规则**:SELECT语句的基本构成元素,包括SELECT、FROM、WHERE等子句。 - **你的第一个查询**:实际操作创建简单的查询语句,如选择特定列、过滤行等。 - **总结**:归纳SELECT语句的核心概念。 #### 第三天:表达式、条件语句与运算 - **表达式**:包括算术运算符、比较运算符等,用于构建复杂的查询条件。 - **条件语句**:如IF…THEN…ELSE结构,用于实现逻辑判断。 - **运算**:通过组合不同的表达式和条件语句,可以进行更为复杂的查询操作。 #### 第四天:函数 - **汇总函数**: - **COUNT**:计算非NULL值的数量。 - **SUM**:计算数值列的总和。 - **AVG**:计算数值列的平均值。 - **MAX**:找出最大值。 - **MIN**:找出最小值。 - **VARIANCE**:计算方差。 - **STDDEV**:计算标准偏差。 - **日期/时间函数**: - **ADD_MONTHS**:添加指定的月份数。 - **LAST_DAY**:返回指定月份的最后一天。 - **MONTHS_BETWEEN**:计算两个日期之间的月份数。 - **NEW_TIME**:转换时区。 - **NEXT_DAY**:返回指定日期之后的第一个工作日。 - **SYSDATE**:获取系统当前日期时间。 - **数学函数**: - **ABS**:求绝对值。 - **CEIL/FLOOR**:向上/向下取整。 - **COS/COSH/SIN/SINH/TAN/TANH**:三角函数及其双曲函数。 - **EXP**:自然指数函数。 - **LN/LOG**:自然对数/常用对数。 - **MOD**:求模。 - **POWER**:幂运算。 - **SIGN**:符号函数。 - **SQRT**:平方根。 - **字符函数**: - **CHR**:ASCII码转字符。 - **CONCAT**:字符串连接。 - **INITCAP**:首字母大写。 - **LOWER/UPPER**:转换为小写/大写。 - **LPAD/RPAD**:左/右填充。 - **LTRIM/RTRIM**:删除前/后空格。 - **REPLACE**:替换字符串。 - **SUBSTR**:截取字符串。 - **TRANSLATE**:替换字符。 - **INSTR**:查找子串位置。 - **LENGTH**:字符串长度。 - **转换函数**: - **TO_CHAR**:将数据转换为字符格式。 - **TO_NUMBER**:将数据转换为数字格式。 - **其它函数**: - **GREATEST/LEAST**:返回最大/最小值。 - **USER**:获取当前用户信息。 #### 第五天:SQL中的子句 - **WHERE子句**:用于过滤查询结果,基于指定条件选择行。 - **STARTING WITH子句**:用于模式匹配,特别是与LIKE结合使用。 - **ORDER BY子句**:按指定列排序查询结果。 - **GROUP BY子句**:将结果集按一个或多个列分组。 - **HAVING子句**:与GROUP BY结合使用,对分组后的结果施加过滤条件。 - **子句的综合应用**:通过组合不同的子句,可以构建更复杂的查询语句。 #### 第六天:表的联合 - **介绍**:了解如何将多个表的数据合并成一个结果集。 - **在一个SELECT语句中使用多个表**:通过INNER JOIN、LEFT JOIN等联接方式合并数据。 - **正确地找到列**:确保引用正确的表名和列名。 - **等值联合**:基于等值条件将表合并。 - **不等值联合**:基于不等值条件进行合并。 - **外部联合与内部联合**:区别LEFT JOIN、RIGHT JOIN和INNER JOIN的使用场景。 - **表的自我联合**:一个表与自身进行联接。 #### 第七天:子查询 - **建立一个子查询**:在主查询中嵌套另一个查询语句。 - **在子查询中使用汇总函数**:利用汇总函数如COUNT、SUM等进行计算。 - **子查询的嵌套**:子查询可以嵌套在其他子查询中。 - **相关子查询**:子查询的结果依赖于外部查询的每一行。 - **EXISTS、ANY、ALL的使用**:控制查询行为的关键字,用于简化查询逻辑。 #### 第八天:操作数据 - **数据操作语句**:主要包括INSERT、UPDATE和DELETE语句。 - **插入语句**: - **INSERT VALUES语句**:向表中插入新记录。 - **INSERT SELECT语句**:从一个表中复制数据到另一个表。 - **UPDATE语句**:更新现有记录。 - **DELETE语句**:删除表中的记录。 - **从外部数据源中导入和导出数据**:支持不同数据库间的迁移。 #### 第九天:创建和操作表 - **CREATEDATABASE语句**:创建新的数据库。 - **建立数据库时的选项**:定义数据库的各种属性。 - **设计数据库**:规划数据库的结构,确定表之间的关系。 - **建立数据字典**:记录数据库的元数据。 - **建立关键字段**:定义主键,确保数据的唯一性。 - **CREATETABLE语句**:创建新表。 - **表名**:为表命名。 - **空值属性**:允许列接受NULL值。 - **唯一属性**:确保某一列的值在整个表中是唯一的。 - **表的存储与尺寸的调整**:管理表的物理存储空间。 - **用一个已经存在的表来建表**:通过复制现有表的结构来创建新表。 - **ALTERTABLE语句**:修改现有表的结构。 - **DROPTABLE语句**:删除表。 - **DROPDATABASE语句**:删除整个数据库。 #### 第十天:创建视图和索引 - **使用视图**:视图提供了一个简化的方式来看待表中的数据,可以用来隐藏复杂查询的细节。 - **列的重命名**:在视图中重新命名列名。 - **SQL对视图的处理过程**:了解SQL如何执行基于视图的操作。 以上是对《SQL21日自学通》部分章节知识点的详细概述,涵盖了SQL语言的基础概念、查询技巧、数据操作、表的设计与维护等方面,旨在帮助读者系统地学习SQL语言并熟练掌握其应用。
- 粉丝: 0
- 资源: 6
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助