开启掘金成长之旅!这是我参与「掘金日新计划 · 2 月更文挑战」的第 2 天,点击查看活动详情
一、前言
大家好,今天文章的内容是:
- 【如何使用 SELECT 语句从表中检索一个或多个数据列】
二、内容
2.1、SELECT
最常用的 SQL 语句就是 SELECT 语句了,其用于从一个或多个表中检索信息。
使用 SELECT 语句检索表数据时,至少需要给出两条信息:
- 想选择什么数据:使用
SELECT关键字 - 从哪个地方(表)选择:使用
FROM关键字
2.2、检索语句
(1) 检索单个列
在 MySQL 中,检索单个列的语法如下:
SELECT 列名(字段) FROM 表名;
比如,下面代码使用了 SELECT 语句来检索单个列:
-- 从 products 表中检索一个名为 prod_name 的列
SELECT prod_name FROM products;
需要注意的是,上述语句返回的是表中的所有行,也就是说,检索后返回的数据并没有过滤,也没有排序(如果过滤,则会得出结果集的一个子集)。
(2) 检索多个列
要想从一个表中检索多个列,我们只需要在SELECT关键字后给出多个列名,列名之间用逗号隔开。
比如下述语句指定从表1中检索三个列名:
SELECT 列1, 列2, 列3
FROM 表1;
(3) 检索所有列
前面记录的是检索表中的单个列或者多个列,如果你想一次性检索出表中的所有数据,那么可以尝试使用通配符 * 。我们使用通配符 * 来检索表中的所有字段信息。
语法如下:
SELECT * FROM 表名;
举个例子,我们从品牌表中检索所有字段的信息,代码如下:
SELECT * FROM tb_brand;
(4) 检索不同的行
在前面记录的检索语句中,返回的结果可以具有相同的值。如果我们想避免这种情况的发生,那么可以使用使用 DISTINCT 关键字。该关键字可以用于检索出具有不同值的列表。
语法为:
SELECT DISTINCT 列(字段) FROM 表名;
上述语句用于返回唯一的列,也就是说,返回的每一行数据都是不同的。
(5) 检索并限制结果
在前面的检索语句中,会返回所有匹配的行。
如果我们希望限制返回结果的数目,那么可以使用 LIMIT 关键字。该关键字可以有两种写法:
写法一举例:
-- 返回不多于 5 行的数据
SELECT 列1 FROM 表1 LIMIT 5;
写法二举例:
-- 返回从第 5 行开始的 5 行数据数据
SELECT 列2 FROM 表2 LIMIT 5, 5;
备注:
LIMIT 1, 1将检索出第二行而不是第一行- 这是因为检索出来的第一行是 行0 而不是 行1
需要注意,MySQL 支持 LIMIT 的另一种替代语法:
- 比如
LIMIT 4 OFFSET 3 - 这条子句表示:从行 3 开始,取 4 行数据。效果等同于
LIMIT 3, 4
(6) 使用完全限定的表名
我们既可以使用列名来引用列,也可以使用完全限定的名字来引用列,也就是同时使用表名和列名。
SELECT 表1.列1 FROM 表1;
上述的语句等同于下面的语句:
SELECT 列1 FROM 表1;
三、后话
好了,今天的文章内容就到这里,感谢观看。