Alex_McAvoy

想要成为渔夫的猎手

SQL 列的选定

【查询指定列】

在多数情况下,用户只需要表中的部分属性列,此时通过 SELECT 子句的 <目标列表表达式> 中指定要查询的属性列即可

例如,查询全体学生的学号、姓名

需要注意的是,<目标列表表达式> 中各列的先后顺序可以与表中的顺序不一致,用户可以根据实际需要改变列的显示顺序

例如,查询全体学生的姓名、学号、所在系

【查询全部列】

当需要查询所有的属性列时,有两种方法

一种是在 <目标列表表达式> 中显式的指出所有列名,该种方法可以改变列的显示顺序

例如,查询全体学生的全体属性,包括学号、姓名、性别、年龄、所在系,要求显示顺序为学号、姓名、年龄、性别、所在系

另一种是在 <目标列表表达式> 中直接使用 *,该方法查询出的列的显示顺序与基表中的顺序相同

例如,查询全体学生的全体属性,要求显示顺序与基表一致

【查询表达式】

SELECT 子句的 <目标列表表达式> 不仅可以是表中的属性列,也可以直接使用表达式,包括:字符串常量、算术表达式、函数、列别名

例如,查询全体学生的姓名、出生年份、所在系,已知所有学生入学年份均为 2017 年,要求用小写表示系名

可以发现,查询出的列标题并不易于阅读,用户可以通过指定别名的方法来改变列标题

【消除重复行】

当两个不完全相同的元组在投影到指定的某些列后,可能会变成相同的行,此时可以使用 DISTINCT 短语来消除重复的行,如果没有指定该短语,默认为 ALL 短语,即保留结果表中所有的行

例如,在选修关系表中查询学生学号

该查询结果中包含了重复的行,使用 DISTINCT 短语即可去除重复行

感谢您对我的支持,让我继续努力分享有用的技术与知识点!