SQL 入门必啃核心术语!表、行、字段、记录、NULL 值一次讲透,再不概念混淆

SQL 入门必啃核心术语!表、行、字段、记录、NULL 值一次讲透,再不概念混淆 前言很多零基础刚学 SQL 的同学都会卡在基础概念分不清 分不清表、字段、行、记录到底有啥区别 碰到NULL 空值直接乱用写查询、做统计频频踩坑 面试被问数据库基础术语支支吾吾工作看业务表结构一脸懵 后面学多表关联、建表约束、分组以及子查询全因为概念模糊越学越乱。其实做开发、测试、数据分析、报表统计所有 SQL 操作都是围绕表、字段、行、NULL 这些基础术语展开。 今天用大白话 Excel 类比一次性把职场高频核心术语讲明白零基础也能秒懂为后面所有 SQL 学习打牢地基。分层知识点精讲一、数据库Database数据库可以理解成一个独立的数据仓库文件夹。 里面存放多张业务数据表用来分类管理整套业务数据比如电商数据库、教务数据库、用户权限数据库。一台 MySQL 服务可以创建多个数据库不同业务隔离存放在不同数据库互不干扰二、数据表Table数据表数据库里最基本的存储单元二维结构化表格和 Excel 工作表一模一样。 所有业务数据用户、订单、商品、学生都必须存在表里面是 SQL 所有操作的载体。三、字段列 / Column字段就是表中的列代表数据的属性。 比如用户表id、姓名、年龄、手机号、注册时间每一项都是一个字段。字段有固定数据类型整型、字符串、日期等建表就是定义有哪些字段、什么类型、有什么约束四、行 / 记录Row / Record行表中的横向一条数据记录日常职场里和行基本同义指一条完整的业务数据。 比如一条用户信息id1姓名 张三年龄 24这就是一行、一条记录。五、NULL 值重点高频NULL代表未知、未赋值、空不是 0、不是空字符串 。 职场三大关键认知NULL不等于 0NULL不等于 空字符串 不能用判断 NULL必须用IS NULL / IS NOT NULL六、冗余数据冗余重复多余、可以通过关联推导出来的数据。 企业建表尽量减少冗余保证数据统一、方便维护更新。七、主键、外键提前认知主键 PRIMARY KEY唯一标识一条记录不能重复、不能为空外键 FOREIGN KEY把两张表关联起来维护表与表之间关系通俗类比 实例表格通俗类比把数据库比作一个档案柜 柜子里每一本档案册就是数据表 档案册每一列固定栏目编号、姓名、年龄就是字段 每一页一条个人档案就是一行 / 一条记录 某一栏没填信息、留白不知道内容就是NULL。示例用户信息表结构表格id字段name字段age字段phone字段1张三25138001380002李四NULL139001390003王五28解读表头 id/name/age/phone →字段 / 列每一行用户信息 →行 / 记录李四 age 没填 →NULL王五 phone 是空字符串→不是 NULLSQL 代码演示1. 普通查询表数据sql-- 查询用户表所有字段所有行 SELECT * FROM user; -- 只查询指定字段 SELECT id, name, age FROM user;2. NULL 正确查询写法必记sql-- 正确查询年龄为空的人 SELECT * FROM user WHERE age IS NULL; -- 正确查询年龄不为空的人 SELECT * FROM user WHERE age IS NOT NULL;3. 新手错误写法绝对禁止sql-- 错误不能用 判断NULL SELECT * FROM user WHERE age NULL;原理NULL 代表未知未知和任何值都不相等 匹配不到任何数据。易错 / 避坑点❌ 把空字符串 当成NULL✅ 正解 是有值的空字符NULL 是无值未知统计、筛选结果完全不一样。❌ 用 NULL、! NULL做条件判断 ✅ 正解只能用IS NULL / IS NOT NULL。❌ 分不清字段和记录写 SELECT 时乱选列 ✅ 正解SELECT 后面跟字段WHERE 筛选行记录。❌ 认为 NULL 参与运算有结果 ✅ 正解任何数值和 NULL 做加减乘除结果依然是 NULL报表统计极易出 bug。核心小结数据库是总仓库数据表是仓库里的二维表格字段 列描述数据属性行 记录代表一条完整业务数据NULL 是未知空值不等于 0、不等于空字符串只能用 IS NULL 判断所有后续 SQL 增删改查、多表关联、建表约束全部基于这批核心术语职场写报表、写查询、面试基础题最爱考 NULL 的判断和坑点。思考题思考题 1数据表中 字段 和 记录 分别对应表格的什么答案 字段对应列代表数据属性 记录对应行代表一条完整的数据。思考题 2age 0、age 、age IS NULL三者有什么区别答案age0年龄明确赋值为 0age年龄是空字符串有具体空值age IS NULL年龄未填写、未知、无赋值。思考题 3为什么不能用WHERE age NULL查询空值答案 NULL 表示未知数据库中未知和任何值都不相等无法匹配 NULL必须使用专用关键字IS NULL。