缺什么补什么:别拿 Oracle 当 MySQL 平替

这门第一模块的资料,核心主题是 Oracle 数据库基础与 SQL 查询。它解决的问题是:很多转岗或查漏补缺的同学,简历上写着熟悉数据库,实际一写 Oracle 的 SQL 就露馅。大家习惯了 MySQL 那套随意拼写,到了 Oracle 环境里,遇到 SQLPlus 命令行、特定的日期函数、强制的类型转换,往往连数据都查不出来。如果你连单行函数的分类都搞不清,或者限定查询的谓词写得磕磕绊绊,这块内容就是用来补这个能力缺口的。这门课适合那些已经懂基本关系型数据库概念,但没系统摸过 Oracle,或者 SQL 基础薄弱、想从语法层面重新打底的技术学习者。别假装自己什么都会,语法细节记不住,到实际写报表或排查数据时就只能干瞪眼。

建议先看哪几块:从工具到单行函数

资料的组织顺序很直白,建议按模块顺序硬啃,不要跳。第一块是 Oracle 简介与安装配置,重点别只看怎么装,要盯死 SQLPlus 命令行工具怎么用。很多自学者只在图形化界面里点来点去,真到了服务器上连不上实例就抓瞎。第二块基础查询是重头,简单查询、限定查询和排序,尤其是限定查询里的各种运算符和空值处理逻辑,必须跟着综合练习走一遍。第三块单行函数是另一个硬骨头,别只看个热闹,字符串处理、数值计算、日期转换这几类函数的参数和返回值,必须自己敲一遍。建议看完视频后,立刻在本地 Oracle 环境里建好练习用的数据表,把视频里的每一条 SQL 语句当成填空题自己写,写不出来再回去看视频,不要直接复制粘贴。

学完能干什么:离开视频也能写出合规查询

看完这些资料,你应该能独立完成几件具体的事。首先是能在 SQLPlus 环境下,不依赖图形化工具,手动连接数据库并执行脚本。其次是面对一张业务表,能根据需求写出带多条件限定、排序的复杂查询,并且知道空值在不同函数里怎么处理。最重要的是,你能熟练使用单行函数做数据格式化,比如把字符串转日期、把日期转指定格式字符串,这在后续写存储过程或做数据清洗时是保命技能。配套练习怎么用?资料里每个小节后都有对应的综合练习,别只看不做。把视频当导读,把练习当考试,自己先写 SQL,跑通了再对答案。如果学完连限定查询的多表关联条件都写不对,或者日期转换函数的参数顺序都记混,那就老老实实回去重刷对应章节,别往下走。

课程目录

1-1 [Oracle基础与提升] Oracle简介 (12:53)
1-2 [Oracle基础与提升] Oracle安装与配置 (29:19)
1-3 [Oracle基础与提升] SQLPlus命令 (23:55)
1-4 [Oracle基础与提升] SQL简介&数据表分析 (24:54)
2-1 [SQL基础查询] SQL简单查询 (20:38)
2-2 [SQL基础查询] SQL限定查询 (48:53)
2-3 [SQL基础查询] 查询排序 (10:30)
2-4 [SQL基础查询] 综合练习:基础查询 (12:17)
3-1 [单行函数] 单行函数简介 (03:52)
3-2 [单行函数] 字符串函数 (27:38)
3-3 [单行函数] 数值函数 (08:25)
3-4 [单行函数] 日期函数 (37:50)
3-5 [单行函数] 转换函数 (17:52)
3-6 [单行函数] 通用函数 (10:17)
4-1 [多表查询] 认识多表查询 (30:20)
4-2 [多表查询] 查询分析 (15:26)
4-3 [多表查询] 表的连接 (19:19)
4-4 [多表查询] SQL:1999语法 (13:26)
5-1 [数据集合操作] 统计函数 (14:16)
5-2 [数据集合操作] 分组统计 (17:43)
5-3 [数据集合操作] 多表查询与分组统计 (12:40)
5-4 [数据集合操作] HAVING子句 (07:00)
5-5 [数据集合操作] 分组查询案例 (11:16)
6-1 [子查询] 子查询简介 (06:19)
6-2 [子查询] WHERE子句使用子查询 (25:49)
6-3 [子查询] HAVING子句使用子查询 (04:34)
6-4 [子查询] SELECT子句使用子查询 (03:45)
6-5 [子查询] FROM子句使用子查询 (11:02)
7-1 [复杂查询案例] 复杂查询案例一 (08:52)
7-2 [复杂查询案例] 复杂查询案例二 (07:04)
7-3 [复杂查询案例] 复杂查询案例三 (07:46)
7-4 [复杂查询案例] 复杂查询案例四 (04:16)
7-5 [复杂查询案例] 复杂查询案例五 (04:20)
8-1 [数据更新] 增加数据 (12:13)
8-2 [数据更新] 修改数据 (10:22)
8-3 [数据更新] 删除数据 (08:36)
9-1 [事务处理] 事务处理基本概念 (13:07)
9-2 [事务处理] 事务锁 (19:53)
10-1 [数据伪列] ROWNUM (17:15)
10-2 [数据伪列] ROWID (14:21)
11-1 [表的创建与管理] 常用数据类型 (10:03)
11-2 [表的创建与管理] 表的创建 (05:27)
11-3 [表的创建与管理] 表的复制 (07:38)
11-4 [表的创建与管理] 表的截断操作 (07:17)
11-5 [表的创建与管理] 为表重命名 (08:10)
11-6 [表的创建与管理] 数据表的删除 (04:37)
11-7 [表的创建与管理] 闪回技术 (11:37)
11-8 [表的创建与管理] 修改表结构 (19:02)
12-1 [约束的创建与管理] 约束简介 (04:12)
12-2 [约束的创建与管理] 非空约束 (04:08)
12-3 [约束的创建与管理] 唯一约束 (14:20)
12-4 [约束的创建与管理] 主键约束 (08:05)
12-5 [约束的创建与管理] 检查约束 (06:09)
12-6 [约束的创建与管理] 外键约束 (29:16)
12-7 [约束的创建与管理] 修改约束 (11:46)
13-1 [综合实战:DML&DDL] 创建数据表 (08:40)
13-2 [综合实战:DML&DDL] 增加测试数据 (09:52)
13-3 [综合实战:DML&DDL] 数据查询实战 (25:47)
13-4 [综合实战:DML&DDL] 数据更新实战 (02:39)
14-1 [常用数据库对象] 定义序列 (14:34)
14-2 [常用数据库对象] 定义特殊序列 (17:32)
15-1 [视图的定义及使用] 视图的创建与使用 (16:13)
15-2 [视图的定义及使用] 视图的更新操作 (19:29)
16-1 [其它数据库对象] 同义词 (09:45)
16-2 [其它数据库对象] 索引 (34:50)
16-3 [其它数据库对象] 01067_用户管理 (29:31)
17-1 [数据库备份] 数据导出与导入 (12:16)
17-2 [数据库备份] 数据库冷备份 (13:45)
18-1 [数据库设计] 数据库设计范式(第一范式) (09:55)
18-2 [数据库设计] 数据库设计范式(第二范式) (18:10)
18-3 [数据库设计] 数据库设计范式(第三范式) (05:38)
18-4 [数据库设计] PowerDesigner设计工具 (16:40)
18-5 [数据库设计] 综合实战:数据库设计分析实例 (53:41)
19-1 [Java8编程入门] Java8编程入门 (21:53)
19-2 [Java8编程入门] Java发展过程 (39:05)
19-3 [Java8编程入门] Java主要特点 (09:42)
20-1 [初识Java开发] JDK的安装与配置 (15:02)
20-2 [初识Java开发] 第一个Java程序 (18:40)
20-3 [初识Java开发] CLASSPATH环境属性 (11:31)
21-1 [Java基本概念] 注释 (06:22)
21-2 [Java基本概念] 标识符与关键字 (09:56)
22-1 [Java数据类型] 简介 (10:44)
22-2 [Java数据类型] 整型 (31:27)
22-3 [Java数据类型] 浮点型 (13:12)
22-4 [Java数据类型] 字符型 (10:20)
22-5 [Java数据类型] 布尔型 (04:27)
22-6 [Java数据类型] String型 (08:45)
23-1 [Java运算符] 基础运算符 (11:56)
23-2 [Java运算符] 三目运算符 (03:25)
23-3 [Java运算符] 逻辑运算符 (12:47)
23-4 [Java运算符] 位运算符 (16:41)
24-1 [Java程序逻辑控制] if分支结构 (13:16)
24-2 [Java程序逻辑控制] switch分支结构 (07:36)
24-3 [Java程序逻辑控制] 循环结构 (15:25)
24-4 [Java程序逻辑控制] 循环控制 (09:39)
25-1 [Java方法的定义及使用] 方法基本定义 (19:00)
25-2 [Java方法的定义及使用] 方法重载 (10:12)
25-3 [Java方法的定义及使用] 方法递归调用 (13:26)