# TiDB Course 201 知识点索引
+ 2022-08-02

| 知识点 | 章节:幻灯片号.[幻灯片标题] | 知识点 | 章节:幻灯片号.[幻灯片标题] |
| :--   | :-- | :--   | :--  |
| ABC 原则 | 3:26.[选择数据类型] | ABS 函数 | 4:31.[基本算数函数] |
| ACID | 8:14.[事务概览] | ACOS 函数 | 4:32.[其他常用函数] |
| ANSI SQL 模式 | 11-java:08.[其他重要的 SQL 模式] | ANSI_QUOTES SQL 模式 | 3:23.[字符串表达式] |
| ASIN 函数 | 4:32.[其他常用函数] | ATAN 函数 | 4:32.[其他常用函数] |
| ATAN2 函数 | 4:32.[其他常用函数] | AUTOCOMMIT | 8:15.[事务自动提交模式]; 8:17.[隐式 COMMIT] |
| AUTO_INCREMENT | 7:13.[AUTO_INCREMENT 属性] | AUTO_RANDOM | 7:14.[AUTO_RANDOM 属性] |
| AVG 函数 | 4:33.[聚合函数] | BEGIN | 8:16.[事务控制语句]; 8:18.[事务控制语句演示] |
| BEGIN OPTIMISTIC | 8:25.[切换事务模式] | BEGIN PESSIMISTIC | 8:25.[切换事务模式] |
| BETWEEN ... AND 操作 | 2:08.[数值过滤] | BINARY 数据类型 | 3:19.[二进制和变量二进制] |
| BIT 数据类型 | 3:10.[BIT 数据类型] | BLOB 数据类型 | 3:20.[二进制大对象数据类型] |
| CANCAT_WS 函数 | 4:12.[逆向、连接] | CASE 表达式 | 4:38.[`CASE` 表达式] |
| CAST 函数 | 3:25.[CAST 函数] | CAUSAL CONSISTENCY ONLY | 8:19.[因果一致性的事务] |
| CBO | 7:44.[引擎智能选择] | CEILING 函数 | 4:31.[基本算数函数] |
| CHAR 数据类型 | 3:17.[定长和变长字符串] | CHAR_LENGTH 函数 | 4:20.[确定字符串长度] |
| CLUSTERED PRIMARY KEY | 7:26.[Primary Key 和索引] | COLLATE 子句 | 7:07.[COLLATE 子句] |
| CONCAT 函数 | 4:12.[逆向、连接]; 5:16.[Join 示例 (继续...)] | COS 函数 | 4:32.[其他常用函数] |
| COT 函数 | 4:32.[其他常用函数] | COUNT 函数 | 4:33.[聚合函数] |
| CURDATE 函数 | 4:26.[日期和时间函数] | CURTIME 函数 | 4:26.[日期和时间函数] |
| Cached Table | 7:38.[缓存表] | DATE 数据类型 | 3:12.[时间数据类型] |
| DATEDIFF 函数 | 4:30.[比较日期] | DATETIME 据类型 | 3:12.[时间数据类型] |
| DATE_ADD 函数 | 4:27.[日期和时间算术] | DATE_FORMAT 函数 | 4:28.[将日期格式化为字符串] |
| DATE_SUB 函数 | 4:27.[日期和时间算术] | DAYNAME 函数 | 4:26.[日期和时间函数] |
| DAYOFYEAR 函数 | 4:26.[日期和时间函数] | DECIMAL 数据类型 | 3:06.[定点数据类型] |
| DEGREES 函数 | 4:32.[其他常用函数] | DELETE 语法 | 8:11.[DELETE 语句] |
| DESC | 2:05.[示例数据库:Universe] | DISTINCT | 2:06.[投射 - 无过滤查询] |
| DOUBLE 数据类型 | 3:07.[浮点数数据类型] | Dirty Read | 8:21.[Dirty Read] |
| DriverManager.getConnection | 9-java:10.[获取 Connector/J 连接对象: Example] | ENUM 数据类型 | 3:21.[枚举和集合类型] |
| ERROR_FOR_DIVISION_BY_ZERO SQL 模式 | 11-java:08.[其他重要的 SQL 模式]; 4:05.[使用函数]; 4:06.[`ERROR_FOR_DIVISION_BY_ZERO`] | EXCEPT | 5:11.[其他集合运算] |
| EXISTS | 6:10.[`IN` 和 `EXISTS`]; 6:11.[`IN` 和 `EXISTS` 例子] | EXP 函数 | 4:32.[其他常用函数] |
| ErrorCode | 11-java:10.[解释错误消息]; 11-java:11.[在使用连接器时处理错误]; 11-java:12.[SQLException Class]; 11-java:13.[SQLException: Example] | FLASHBACK TABLE | 7:10.[闪回操作] |
| FLOAT 数据类型 | 3:07.[浮点数数据类型] | FLOOR 函数 | 4:31.[基本算数函数] |
| FOREIGN KEY | 7:30.[Foreign Key] | GET_FORMAT 函数 | 4:28.[将日期格式化为字符串] |
| GLOBAL TEMPORARY TABLE | 7:21.[全局临时表]; 7:22.[全局临时表 (继续...)] | GROUP BY 操作 | 4:34.[`GROUP BY` 分组]; 4:35.[`GROUP BY` 和 `HAVING`] |
| GROUP_CONCAT 函数 | 4:33.[聚合函数] | HAVING 子句 | 4:35.[`GROUP BY` 和 `HAVING`] |
| HOUR 函数 | 4:26.[日期和时间函数] | IF 函数 | 4:40.[`IF` 函数] |
| IFNULL 函数 | 4:39.[`NULLIF` 和 `IFNULL`] | IN | 6:10.[`IN` 和 `EXISTS`]; 6:11.[`IN` 和 `EXISTS` 例子] |
| INNER JOIN | 5:06.[`INNER JOIN`]; 5:13.[Join 示例]; 5:14.[Join 示例 (继续...)] | INSERT 函数 | 4:19.[插入和替换字符串的某些部分] |
| INSERT 语法 | 8:05.[INSERT 语句] | INSTR 函数 | 4:11.[在字符串中查找字符串] |
| INTERSECT | 5:11.[其他集合运算] | INTERVAL | 3:15.[时间间隔关键字] |
| INTERVAL 函数 | 4:27.[日期和时间算术] | JDBC 最佳实践 | 12:11.[开发 Java 应用程序的最佳实践] |
| JDBC 配置建议 | 12:15.[JDBC 配置建议] | LAST_INSERT_ID | 10-java:14.[LAST_INSERT_ID() 与 Connector/J: 示例] |
| LCASE 函数 | 4:09.[大小写转换] | LEFT 函数 | 4:15.[`LEFT`, `RIGHT`, `LPAD`, `RPAD`] |
| LENGTH 函数 | 4:20.[确定字符串长度] | LIKE operation | 2:10.[LIKE 的转义字符] |
| LIKE 操作 | 2:09.[字符串过滤]; 4:21.[匹配字符串模式: `LIKE`] | LIMIT 子句 | 2:12.[控制查询返回的记录数]; 2:16.[Quiz]; 2:17.[KeySet Seeker 操作]; 2:18.[以每页 10 行分页查询质量 Top-30 的类地行星]; 2:19.[以每页 10 行分页查询质量 Top-30 的类地行星 (继续)]; 2:20.[Offset 操作的开销]; 2:21.[Keyset Seeker 操作的开销]; 8:07.[在 UPDATE 里使用 LIMIT]; 8:08.[在 UPDATE 里使用 ORDER BY 和 LIMIT] |
| LN 函数 | 4:32.[其他常用函数] | LOCAL TEMPORARY TABLE | 7:19.[本地临时表]; 7:20.[本地临时表 (继续...)] |
| LOCATE 函数 | 4:11.[在字符串中查找字符串] | LOG 函数 | 4:32.[其他常用函数] |
| LOG10 函数 | 4:32.[其他常用函数] | LOG2 函数 | 4:32.[其他常用函数] |
| LONGTEXT 数据类型 | 3:18.[文本数据类型] | LOWER 函数 | 4:09.[大小写转换] |
| LPAD 函数 | 4:15.[`LEFT`, `RIGHT`, `LPAD`, `RPAD`] | LTRIM 函数 | 4:18.[`TRIM, LTRIM, RTRIM`: 修剪字符串] |
| MAKEDATE 函数 | 4:29.[创建日期] | MAKETIME 函数 | 4:29.[创建日期] |
| MAX 函数 | 4:33.[聚合函数] | MEDIUMTEXT 数据类型 | 3:18.[文本数据类型] |
| MICROSECOND 函数 | 4:26.[日期和时间函数] | MIN 函数 | 4:33.[聚合函数] |
| MINUTE 函数 | 4:26.[日期和时间函数] | MOD 函数 | 4:32.[其他常用函数] |
| MONTHNAME 函数 | 4:26.[日期和时间函数] | MVCC | 1:10.[KV 与记录的多版本控制] |
| Multi Raft Group | 1:09.[KV 与存储] | NONCLUSTERED PRIMARY KEY | 7:26.[Primary Key 和索引] |
| NOW 函数 | 4:26.[日期和时间函数] | NO_ENGINE_SUBSTITUTION SQL 模式 | 11-java:08.[其他重要的 SQL 模式] |
| NO_ZERO_DATE SQL 模式 | 11-java:08.[其他重要的 SQL 模式] | NULL 的定义 | 3:27.[`NULL`] |
| NULL 的行为 | 3:27.[`NULL`]; 4:13.[处理 `NULL`]; 5:08.[`OUTER JOIN` 和 `NULL`] | NULLIF 函数 | 4:39.[`NULLIF` 和 `IFNULL`] |
| Non-Repeatable Read | 8:22.[Non-Repeatable Read] | ON DUPLICATE KEY UPDATE | 8:10.[避免重复的行记录] |
| ONLY_FULL_GROUP_BY SQL 模式 | 11-java:08.[其他重要的 SQL 模式]; 4:34.[`GROUP BY` 分组] | ORACLE SQL 模式 | 11-java:08.[其他重要的 SQL 模式]; 4:18.[`TRIM, LTRIM, RTRIM`: 修剪字符串] |
| ORDER BY 子句 | 2:11.[排序] | OUTER JOIN | 5:07.[`OUTER JOIN`]; 5:15.[Join 示例 (继续...)] |
| Online DDL | 7:23.[TiDB 在线 DDL] | PI 函数 | 4:32.[其他常用函数] |
| PIPES_AS_CONCAT SQL 模式 | 4:14.[使用管道运算符连接字符串] | PK_AUTO_RANDOM_BITS | 7:14.[AUTO_RANDOM 属性] |
| POSITION 函数 | 4:11.[在字符串中查找字符串] | POWER 函数 | 4:32.[其他常用函数] |
| PREPARE | 8:28.[Prepared Statement] | Partitioned Table | 7:39.[分区表] |
| Phantom Read | 8:23.[Phantom Read] | Prepared Statement | 10-java:04.[为什么要使用 Prepared Statements]; 8:28.[Prepared Statement] |
| RADIANS 函数 | 4:32.[其他常用函数] | RAND 函数 | 4:32.[其他常用函数] |
| RANK 函数 | 4:36.[窗口函数] | READ COMMITTED | 8:24.[TiDB 事务隔离级别] |
| REGEXP 操作 | 4:22.[匹配字符串模式: `RLIKE`]; 4:23.[正则表达式复合模式示例] | REPEATABLE READ | 8:24.[TiDB 事务隔离级别] |
| REPLACE | 8:09.[REPLACE 语句] | REPLACE 函数 | 4:19.[插入和替换字符串的某些部分] |
| RETURN_GENERATED_KEYS | 10-java:14.[LAST_INSERT_ID() 与 Connector/J: 示例] | REVERSE 函数 | 4:12.[逆向、连接] |
| RIGHT 函数 | 4:15.[`LEFT`, `RIGHT`, `LPAD`, `RPAD`] | RLIKE 操作 | 4:22.[匹配字符串模式: `RLIKE`]; 4:23.[正则表达式复合模式示例] |
| ROUND 函数 | 4:31.[基本算数函数] | RPAD 函数 | 4:15.[`LEFT`, `RIGHT`, `LPAD`, `RPAD`] |
| RTRIM 函数 | 4:18.[`TRIM, LTRIM, RTRIM`: 修剪字符串] | RocksDB | 1:09.[KV 与存储] |
| SECOND 函数 | 4:26.[日期和时间函数] | SELECT 基本语法 | 2:04.[SELECT 的基本语法] |
| SEMI JOIN | 6:11.[`IN` 和 `EXISTS` 例子] | SET 数据类型 | 3:21.[枚举和集合类型] |
| SHARD_ROW_ID_BITS | 7:15.[表选项] | SHOW ERRORS | 11-java:09.[显示警告和错误] |
| SHOW WARNINGS | 11-java:09.[显示警告和错误] | SIGN 函数 | 4:31.[基本算数函数] |
| SIN 函数 | 4:32.[其他常用函数] | SQL 模式 | 11-java:04.[SQL 模式]; 11-java:05.[查看 SQL 模式]; 11-java:06.[设置 SQL 模式] |
| SQL 注射 | 8:27.[动态语句 和 SQL 注射] | SQL 语句中的 NULL | 9-java:18.[处理 SQL 语句中的 NULL] |
| SQLException | 11-java:11.[在使用连接器时处理错误]; 11-java:12.[SQLException Class]; 11-java:13.[SQLException: Example] | SQLSTATE | 11-java:10.[解释错误消息]; 11-java:11.[在使用连接器时处理错误]; 11-java:12.[SQLException Class]; 11-java:13.[SQLException: Example] |
| SQL_MODE | 11-java:04.[SQL 模式]; 11-java:05.[查看 SQL 模式]; 11-java:06.[设置 SQL 模式] | SQRT 函数 | 4:32.[其他常用函数] |
| START TRANSACTION | 8:16.[事务控制语句] | STRCMP 函数 | 4:10.[比较字符串] |
| STRICT_ALL_TABLES | 11-java:07.[严格模式] | STRICT_TRANS_TABLES | 11-java:07.[严格模式] |
| STR_TO_DATE 函数 | 4:29.[创建日期] | SUBSTRING 函数 | 4:16.[`SUBSTRING` 检索字符串的一部分] |
| SUBSTRING_INDEX 函数 | 4:17.[`SUBSTRING_INDEX`] | SUM 函数 | 4:33.[聚合函数] |
| Secondary Index | 7:31.[二级索引] | Stale Read | 7:35.[Stale Read] |
| Stateful 组件 | 1:04.[TiDB 分布式数据库整体架构] | Stateless 组件 | 1:04.[TiDB 分布式数据库整体架构] |
| StreamingResult | 12:14.[对大型结果集使用 StreamingResult] | TAN 函数 | 4:32.[其他常用函数] |
| TEXT 数据类型 | 3:18.[文本数据类型] | TIDB_BOUNDED_STALENESS 函数 | 7:35.[Stale Read] |
| TIME 据类型 | 3:12.[时间数据类型] | TIMESTAMP 据类型 | 3:12.[时间数据类型] |
| TINYTEXT 数据类型 | 3:18.[文本数据类型] | TRANDITIONAL SQL 模式 | 11-java:08.[其他重要的 SQL 模式] |
| TRIM 函数 | 4:18.[`TRIM, LTRIM, RTRIM`: 修剪字符串] | TRUNCATE | 8:12.[TRUNCATE 语句] |
| TRUNCATE 函数 | 4:31.[基本算数函数] | TSO | 1:04.[TiDB 分布式数据库整体架构] |
| TiDB Server 的模块 | 1:07.[TiDB Server 的模块] | TiDB 事务最佳实践 | 12:05.[事务最佳实践] |
| TiDB 对象名比较方式 | 7:05.[创建 Schema/Database] | TiDB 架构特点 | 1:14.[架构对比] |
| TiDB 的最佳场景 | 12:04.[TiDB 适用的最佳场景] | TiFlash | 7:43.[TiFlash 主要特点]; 7:44.[引擎智能选择] |
| TiKV Region | 1:09.[KV 与存储] | TiKV 并行 | 1:11.[分布式 SQL 运算] |
| TiKV 表达式下推 | 4:41.[表达式下推] | Top-N 分析 | 2:15.[对查询结果进行分页]; 5:14.[Join 示例 (继续...)] |
| UCASE 函数 | 4:09.[大小写转换] | UNION | 5:09.[`UNION`]; 5:10.[UNION 示例] |
| UNIQUE KEY | 7:29.[Unique Key 和索引] | UPDATE 语法 | 8:06.[UPDATE 语句] |
| UPPER 函数 | 4:09.[大小写转换] | VARBINARY 数据类型 | 3:19.[二进制和变量二进制] |
| VARCHAR 数据类型 | 3:17.[定长和变长字符串] | WITH 子句 | 6:12.[WITH 子句] |
| YEAR 函数 | 4:26.[日期和时间函数] | YEAR 据类型 | 3:12.[时间数据类型] |
| \G | 2:13.[小技巧] | _tidb_rowid | 7:26.[Primary Key 和索引] |
| as 关键字 | 2:06.[投射 - 无过滤查询] | auto_increment_increment | 7:13.[AUTO_INCREMENT 属性] |
| auto_increment_offset | 7:13.[AUTO_INCREMENT 属性] | executeQuery | 9-java:14.[executeQuery(): Example] |
| executeUpdate | 9-java:13.[executeUpdate(): Example] | lower_case_table_names | 7:05.[创建 Schema/Database] |
| pager less -S | 2:13.[小技巧] | rewriteBatchedStatements | 10-java:15.[使用批处理]; 12:13.[使用 Batch 批量插入] |
| tidb_allow_remove_auto_inc | 7:13.[AUTO_INCREMENT 属性] | tidb_replica_read | 7:35.[Stale Read] |
| useCurosrFetch | 12:14.[对大型结果集使用 StreamingResult] | useServerPrepStmts | 10-java:13.[Prepared Statements 和 Connector/J: 示例]; 12:12.[使用预编译语句 API] |
| 不可重复度 | 8:22.[Non-Repeatable Read] | 严格 SQL_MODE | 11-java:07.[严格模式] |
| 乐观锁模式 | 8:25.[切换事务模式] | 事务隔离级别 | 8:24.[TiDB 事务隔离级别] |
| 优化 LIMIT offset 操作 | 2:17.[KeySet Seeker 操作]; 2:18.[以每页 10 行分页查询质量 Top-30 的类地行星]; 2:19.[以每页 10 行分页查询质量 Top-30 的类地行星 (继续)]; 2:20.[Offset 操作的开销]; 2:21.[Keyset Seeker 操作的开销] | 传统共享存储集群弱点 | 1:15.[非分布式 RDBMS 横向扩展尝试 A: 多节点共享存储架构] |
| 使用 Java 执行 SQL 语句 | 9-java:12.[使用 Java 执行 SQL 语句] | 使用 Java 控制事务 | 9-java:15.[使用事务] |
| 使用连接池的益处 | 9-java:16.[连接池介绍] | 关联子查询 | 6:09.[关联子查询] |
| 函数基础知识 | 4:04.[TiDB 表达式中的函数]; 4:05.[使用函数] | 函数的种类 | 4:07.[函数类型] |
| 分布式 SQL | 1:11.[分布式 SQL 运算] | 分库分表弱点 | 1:16.[非分布式 RDBMS 横向扩展尝试 B: 分库分表] |
| 分页 | 2:15.[对查询结果进行分页] | 创建沙箱数据库集群 | 1:18.[创建 TiDB] |
| 哈希分区表 | 7:41.[Hash 分区表] | 因果一致性事务 | 8:19.[因果一致性的事务] |
| 处理重复插入行 | 8:10.[避免重复的行记录] | 复合主键 | 7:28.[复合 Primary Key] |
| 多表 JOIN | 5:17.[Join 示例 (继续...)] | 子查询定义 | 6:04.[子查询简介] |
| 子查询的可用位置 | 6:06.[子查询的放置位置]; 6:07.[子查询放置示例]; 6:08.[用于 `Join`] | 字符集 | 3:24.[字符集和排序规则]; 7:06.[字符集和排序规则] |
| 布尔表达式 | 3:11.[布尔表达式] | 幻读 | 8:23.[Phantom Read] |
| 引擎智能选择 | 7:44.[引擎智能选择] | 悲观锁模式 | 8:25.[切换事务模式] |
| 执行计划 | 2:14.[尝试检查执行计划] | 批量 DML 最佳实践 | 10-java:15.[使用批处理] |
| 排序规则 | 3:24.[字符集和排序规则]; 7:06.[字符集和排序规则] | 控制事务 | 8:16.[事务控制语句]; 8:18.[事务控制语句演示] |
| 数据合规与 Placement Policy | 7:36.[放置规则约束] | 日期和时间的格式 | 4:25.[日期和时间格式]; 4:28.[将日期格式化为字符串] |
| 时区 | 3:14.[时间戳和时区] | 显示警告和错误 | 11-java:09.[显示警告和错误] |
| 正则表达式 | 4:22.[匹配字符串模式: `RLIKE`]; 4:23.[正则表达式复合模式示例] | 比较字符串数据类型 | 3:22.[字符串数据类型比较] |
| 比较整数数据类型 | 3:05.[整数数据类型] | 比较时间数据类型 | 3:13.[时间数据类型比较] |
| 比较浮点数据类型 | 3:08.[浮点数据类型比较] | 浮点近似字面值 | 3:09.[数值字面值] |
| 用户变量 | 10-java:06.[用户定义变量]; 8:28.[Prepared Statement] | 确保结果集的顺序 | 12:09.[稳定返回结果的顺序] |
| 窗口函数 | 4:36.[窗口函数] | 笛卡尔积 | 5:05.[笛卡尔积]; 5:16.[Join 示例 (继续...)] |
| 简单子查询 | 6:05.[子查询的优势] | 索引最佳实践 | 12:06.[二级索引最佳实践] |
| 结果集中的 NULL | 9-java:19.[处理结果集中的 NULL] | 聚合函数的作用 | 4:33.[聚合函数]; 4:34.[`GROUP BY` 分组] |
| 脏读 | 8:21.[Dirty Read] | 自动提交 | 8:17.[隐式 COMMIT] |
| 自动提交事务 | 8:15.[事务自动提交模式] | 范围分区表 | 7:40.[Range 分区表] |
| 行与键值对映射 | 1:06.[行记录映射到 KV] | 表与 Placement Policy | 7:33.[跨地域数据库 Region 放置规则]; 7:34.[创建 Placement Policy] |
| 表分区与 Placement Policy | 7:36.[放置规则约束] | 避免全表扫描最佳实践 | 12:08.[尽量避免全表扫描] |
| 隐式提交 | 8:17.[隐式 COMMIT]