投影查询
使用SELECT * FROM <表名> WHERE <条件>可以选出表中的若干条记录。我们注意到返回的二维表结构和原表是相同的,即结果集的所有列与原表的所有列都一一对应。
如果我们只希望返回某些列的数据,而不是所有列的数据,我们可以用SELECT 列1, 列2, 列3 FROM ...,让结果集仅包含指定列。这种操作称为投影查询。
例如,从students表中返回id、score和name这三列:
-- 使用投影查询
SELECT id, score, name FROM students;
Run
这样返回的结果集就只包含了我们指定的列,并且,结果集的列的顺序和原表可以不一样。
使用SELECT 列1, 列2, 列3 FROM ...时,还可以给每一列起个别名,这样,结果集的列名就可以与原表的列名不同。它的语法是SELECT 列1 别名1, 列2 别名2, 列3 别名3 FROM ...。
例如,以下SELECT语句将列名score重命名为points,而id和name列名保持不变:
-- 使用投影查询,并将列名重命名:
SELECT id, score points, name FROM students;
Run
投影查询同样可以接WHERE条件,实现复杂的查询:
-- 使用投影查询+WHERE条件:
SELECT id, score points, name FROM students WHERE gender = 'M';
Run
小结
使用SELECT *表示查询表的所有列,使用SELECT 列1, 列2, 列3则可以仅返回指定列,这种操作称为投影。
SELECT语句可以对结果集的列进行重命名。
网友评论