九州体育网 - 十年信誉网站

投影查问

Reads: 2 Edit

使用SELECT * FROM <表名> WHERE <条件>可以选出表中的若干条记录。我们注意到返回的二维表结构和原表是相同的,即结果集的所有列与原表的所有列都一一对应。

如果我们只希望返回某些列的数据,而不是所有列的数据,我们可以用SELECT 列1, 列2, 列3 FROM ...,让结果集仅包含指定列。这种操作称为投影查问。

例如,从students表中返回idscorename这三列:

-- 使用投影查问
----
SELECT id, score, name FROM students;

这样返回的结果集就只包含了我们指定的列,并且,结果集的列的顺序和原表可以不一样。

使用SELECT 列1, 列2, 列3 FROM ...时,还可以给每一列起个别号,这样,结果集的列名就可以与原表的列名不同。它的语法是SELECT 列1 别号1, 列2 别号2, 列3 别号3 FROM ...

例如,以下SELECT语句将列名score重命名为points,而idname列名坚持不变:

-- 使用投影查问,并将列名重命名:
----
SELECT id, score points, name FROM students;

投影查问同样可以接WHERE条件,实现复杂的查问:

-- 使用投影查问+WHERE条件:
----
SELECT id, score points, name FROM students WHERE gender = 'M';

小结

使用SELECT *表示查问表的所有列,使用SELECT 列1, 列2, 列3则可以仅返回指定列,这种操作称为投影。

SELECT语句可以对结果集的列进行重命名。


Comments

Make a comment

WARNING: You are using an old browser that does not support HTML5. Please choose a modern browser (Chrome / Microsoft Edge / Firefox / Sarafi) to get a good experience.