第 2 章 数据库与表的基本操作
上一章装好了 MySQL,这一章开始动手建库建表。本章覆盖 DDL(数据定义语言):数据库与表的 CREATE、DROP、ALTER,MySQL 8.0 的常用数据类型,以及主键、外键、唯一、非空等约束。学完本篇,你能设计出一张结构规范、约束完整的数据表,为后续 DML 增删改查打好地基。前置知识:第 1 章安装与连接;示例基于 MySQL 8.0。
学习编程语言、开发工具与工程实践,按技术专题查阅原创教程、可运行示例和常见问题。
上一章装好了 MySQL,这一章开始动手建库建表。本章覆盖 DDL(数据定义语言):数据库与表的 CREATE、DROP、ALTER,MySQL 8.0 的常用数据类型,以及主键、外键、唯一、非空等约束。学完本篇,你能设计出一张结构规范、约束完整的数据表,为后续 DML 增删改查打好地基。前置知识:第 1 章安装与连接;示例基于 MySQL 8.0。
MySQL 是全世界最流行的开源关系型数据库,本系列 40 篇将带你从入门到精通、从面试到踩坑。本篇是整个系列的起点:讲清 MySQL 的版本选择、Windows 与 Linux 两种安装方式、客户端连接以及服务启动与停止。学完本篇,你可以在自己的电脑上装好 MySQL 8.0、成功连接并执行第一条 SQL。本系列所有示例均基于 MySQL 8.0。
本篇是"面试踩坑精讲"系列的收官篇,聚焦最后一关——大厂综合面与 HR 谈判。11 个坑覆盖:压力面崩盘、不会主动引导、薪资开价失误、不问 offer 细节、背调隐患、试用期踩线、口头承诺落空、面完不跟进、反问问错、不懂流程节奏、多 offer 决策混乱。前置知识:建议先读[第 40 章](40-大厂面试全流程与考察风格.md)了解大厂"面什么、怎么轮",本篇专门讲"最后一公里踩什么坑"。学完后你能在压力面稳住情绪、把话题主动引向自己的优势,并在薪资谈判与多 offer 决策中守住总包、管理好 deadline。
本篇是"面试踩坑精讲"系列第 9 篇,聚焦数据岗技术面的"隐形门槛"——统计学与机器学习基础概念。11 个高频坑覆盖:p 值误读、置信区间理解错、小样本不做功效分析、过拟合欠拟合混淆、偏差-方差权衡说反、中心极限定理误用、正态假设滥用、相关性当因果、多重比较假阳性、辛普森悖论、抽样偏差。前置知识:建议先读[第 28 章](28-案例五:AB测试结果分析.md)(卡方/t 检验/置信区间/样本量计算)。学完后你能把这些"背过但讲不清"的概念,用面试官认可的方式讲出来,并现场用 numpy/scipy 复现关键现象。
本篇是"面试踩坑精讲"系列第七篇,聚焦技术面最残酷的环节——项目经验深挖。如果说[第 60 章](60-面试踩坑:自我介绍与项目介绍篇.md)教的是"怎么把项目讲出来",本篇教的就是"讲出来之后被面试官按在地上追问时,怎么扛住"。11 个坑覆盖:STAR 缺失、数据规模与口径说不清、上线后无复盘、失败项目甩锅、技术选型理由答不出、连环追问下崩溃、不会量化收益、协作与冲突讲不清、不谈反思与成长、数字口径前后矛盾、项目太多选错主打。前置知识:建议先读[第 59 章](59-面试踩坑:简历与投递篇.md)与[第 60 章](60-面试踩坑:自我介绍与项目介绍篇.md)。学完后你能把任意一个真项目扛住 20 分钟的连环深挖,而不是三轮追问就露馅。
本篇是"面试踩坑精讲"系列里最硬核的一篇——业务数据分析题。这类题不考你背 API,而是现场给你一个业务场景("上周 GMV 为什么跌了""这个 AB 实验能不能上线"),看你怎么拆。11 个坑覆盖:口径不问清就开算、GMV 含退款、留存算错、漏斗漏口径、同比环比混用、AB 实验只看 p 值、异动归因单方向、辛普森悖论、不问业务目标、结论无建议、忽视样本量。前置知识:建议先读[第 25 章](25-案例二:用户留存Cohort分析.md)、[第 27 章](27-案例四:网站访问日志与转化漏斗分析.md)、[第 28 章](28-案例五:AB测试结果分析.md)与[第 41 章](41-大厂面试:业务指标与取数真题.md)。学完后你能在白板上把任何业务题按"口径 → 计算 → 归因 → 建议"讲成一条完整的链。
本篇是"面试踩坑精讲"系列中技术味最浓的一篇,聚焦数据岗笔试与白板题的绝对主力——SQL。11 个高频坑覆盖:WHERE 与 HAVING 混用、GROUP BY 漏列、窗口函数不会、LEFT JOIN 误用、子查询与 JOIN 说不清、索引概念缺失、慢查询分析答错、深分页写法错、去重 COUNT 口径错、SQL 与 pandas 对照说不清、NULL 三值逻辑。前置知识:建议先读[第 60 章](60-面试踩坑:自我介绍与项目介绍篇.md),并掌握基本 SELECT/GROUP BY/JOIN 语法。学完后你能在白板上写出"语义正确 + 口径清楚 + 能讲清性能"的 SQL,并把每条 SQL 翻译成对应的 pandas 写法。
本篇是"面试踩坑精讲"系列的第六篇,聚焦技术面最硬核的一关——白板或共享编辑器上手写 pandas 代码。11 个坑覆盖:不澄清需求就开写、不写边界测试、变量命名差、列名硬编码、忽略空值与重复值、硬写循环不用内置 API、不主动说复杂度、axis方向写错、报错不改乱试、不验证结果就交、时间不够不会取舍。前置知识:建议先读[第 30 章](30-pandas面试题精讲:基础篇.md)与[第 32 章](32-pandas面试题精讲:实战场景篇.md),并熟悉[第 13 章](13-分组聚合:groupby.md)。学完后你能在 25 分钟手写题里,交出一份"需求确认清楚、边界有测试、结果有验证"的代码。
本篇是"面试踩坑精讲"系列进入技术深水区的一篇,专攻原理与性能类问答——这是区分"会用 pandas"和"懂 pandas"的分水岭。11 个高频坑覆盖:merge 底层实现、内存模型、大文件读取、OOM 归因、pandas 与 Spark 选型、向量化原理、浮点精度、时区、join 与 merge 区别、Copy-on-Write、以及"只背结论不实测"的通病。前置知识:建议先读[第 59 章](59-面试踩坑:简历与投递篇.md)、[第 60 章](60-面试踩坑:自我介绍与项目介绍篇.md),并具备 merge/groupby/时间序列的日常使用经验。学完后你能在原理追问下不慌、给出有依据的性能判断,而不是凭印象背结论。
本篇是"面试踩坑精讲"系列第三篇,收拾 pandas 技术面里最容易被当场问倒的基础概念问答。11 个坑覆盖:视图与副本、链式赋值、groupby 语义、axis 方向、loc 与 iloc、apply/agg/transform、NaN 比较、Series 与 DataFrame 区别、read_csv 参数、布尔索引选择边界、SettingWithCopyWarning 现场排错。前置知识:建议先读[第 06 章 数据选择与索引](06-数据选择与索引.md)、[第 13 章 分组聚合:groupby](13-分组聚合:groupby.md)、[第 18 章 视图副本与 SettingWithCopyWarning](18-视图副本与SettingWithCopyWarning.md)。学完后你能把这些"看着简单、一说就错"的概念答出原理深度,而不是靠背 API。