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" />