1. 单表基础查询与结果集裁剪

单表基础查询与结果集裁剪 学习卡片

任务说明

本案例完成SQL中最基础的查询操作:使用SELECT与FROM子句从数据表中检索指定列。你将基于一张学生信息表,完成三种基础查询:查询全部列、查询指定列、以及为查询结果中的列设置别名。通过本案例,掌握SELECT与FROM的基本语法结构。

数据准备

在MySQL或PostgreSQL中执行以下建表与插入语句,准备测试数据:

CREATE TABLE student (
    id INT PRIMARY KEY,
    name VARCHAR(50),
    major VARCHAR(50),
    score DECIMAL(5,2)
);

INSERT INTO student (id, name, major, score) VALUES
(1, '张伟', '计算机科学', 88.5),
(2, '李娜', '软件工程', 92.0),
(3, '王强', '数据科学', 79.5),
(4, '赵敏', '计算机科学', 85.0);

查询实现

以下三条SQL语句分别实现三种基础查询场景:

-- 查询1:查询表中所有列
SELECT * FROM student;

-- 查询2:查询指定列(姓名和专业)
SELECT name, major FROM student;

-- 查询3:查询指定列并设置别名
SELECT name AS 学生姓名, score AS 成绩 FROM student;

代码说明

查询1中,*表示返回student表的全部字段,结果包含id、name、major、score四列。查询2在SELECT后列出两个列名,以逗号分隔,仅返回name和major两列。查询3使用AS关键字为name列设置中文别名“学生姓名”,为score列设置别名“成绩”,使输出结果更易读。三条语句均以FROM student指定数据来源,这是SELECT查询的基本结构。

执行与验证

在数据库客户端(如MySQL Workbench、pgAdmin或命令行)中依次执行上述三条查询语句。执行后应观察到:

  • 查询1返回4行数据,包含全部4个字段;
  • 查询2返回4行数据,仅包含name和major两列;
  • 查询3返回4行数据,表头显示为“学生姓名”和“成绩”,而非原始列名。

若三条语句均返回4行且列名与上述描述一致,则判定本案例通过。

student 表结构 id (INT, PK) name (VARCHAR) major (VARCHAR) score (DECIMAL) 1 张伟 计算机科学 88.50 2 李娜 软件工程 92.00 3 王强 数据科学 79.50 4 赵敏 计算机科学 85.00 三种查询的输出列对比 查询1: SELECT * 返回列: id, name, major, score 行数: 4行 查询2: 指定列 SELECT name, major 返回列: name, major 行数: 4行 查询3: 列别名 SELECT name AS 学生姓名, score AS 成绩 返回列: 学生姓名, 成绩