SQL SELECT语句:选取数据

1年前 (2024-04-26)
SQL SELECT 语句用于从表中选取符条件的数据,该数据以临时表的形式返回,称为结果集。

语法

SELECT 语句的基本语法如下:

SELECT column1, column2, columnN
FROM table_name

WHERE conditions;

column1, column2, columnN 表示选取的列,conditions 表示筛选条件,只有满足条件的数据才会被选取。

WHERE 子句是可选的,您可以不写,此时 SELECT 语句将变成下面的形式:

SELECT column1, column2, columnN FROM table_name;

不使用 WHERE 子句意味着没有筛选条件,此时表中的所有数据都将被选取。

此外,如果您希望选取所有的列,那么可以使用*代替所有列名,语法如下:

SELECT * FROM table_name;

SELECT 子句

SELECT 可以结下面的子句一起使用:

  • WHERE 子句:用来指明筛选条件,只有满足条件的数据才会被选取。

  • ORDER BY 子句:按照某个字段对结果集进行排序。

  • GROUP BY 子句:结聚函数,根据一个或多个列对结果集进行分组。

  • HAVING 子句:通常和 GROUP BY 子句联使用,用来过滤由 GROUP BY 子句返回的结果集。

示例

现在有如下所示的 website 表:

+----+----------------+----------------------------+-----+-------+---------+---------+

| id | name | url | age | alexa | uv | country |

+----+----------------+----------------------------+-----+-------+---------+---------+

| 1 | 百度 | https://www.baidu.com/ | 21 | 4 | 5010.5 | CN |

| 2 | 淘宝 | https://www.taob网站站点" rel="nofollow" />

SELECT id, name, url FROM website;

执行完成以后将得到下面的结果:

+----+----------------+----------------------------+

| id | name | url |

+----+----------------+----------------------------+

| 1 | 百度 | https://www.baidu.com/ |

| 2 | 淘宝 | https://www.taob网站站点" rel="nofollow" />

SELECT * FROM website WHERE uv > 800;

该语句将得到下面的结果:

+----+--------+-------------------------+-----+-------+---------+---------+

| id | name | url | age | alexa | uv | country |

+----+--------+-------------------------+-----+-------+---------+---------+

| 1 | 百度 | https://www.baidu.com/ | 21 | 4 | 5010.5 | CN |

| 2 | 淘宝 | https://www.taob网站站点" rel="nofollow" />