SQL SELECT 语句
在本教程中,你将学习如何使用 SQL 从数据库表中选择记录。
从表中选择数据
在上一章中,我们学习了如何在数据库表中插入数据。现在是时候使用 SQL 查询从现有表中选择数据了。
SELECT
语句用于从一个或多个表中选择或检索数据。你可以使用此语句一次性从表中检索所有行,以及仅检索满足特定条件或条件组合的那些行。
语法
从表中选择数据的基本语法可以通过以下方式给出:
SELECT column1_name , column2_name , columnN_name FROM table_name ;
这里,column1_name,column2_name,…是要获取其值的数据库表的列或字段的名称。但是,如果要获取表中可用的所有列的值,则可以使用以下语法:
SELECT * FROM table_name ;
让我们把这些陈述付诸实践。假设我们的数据库中有一个名为 employees 的表,其中包含以下记录:
+--------+--------------+------------+--------+---------+
| emp_id | emp_name | hire_date | salary | dept_id |
+--------+--------------+------------+--------+---------+
| 1 | Ethan Hunt | 2001-05-01 | 5000 | 4 |
| 2 | Tony Montana | 2002-07-15 | 6500 | 1 |
| 3 | Sarah Connor | 2005-10-18 | 8000 | 5 |
| 4 | Rick Deckard | 2007-01-03 | 7200 | 3 |
| 5 | Martin Blank | 2008-06-24 | 5600 | NULL |
+--------+--------------+------------+--------+---------+
从表中选择全部
以下语句将返回 employees 表中的所有行。
SELECT * FROM employees;
执行后,输出将如下所示:
+--------+--------------+------------+--------+---------+
| emp_id | emp_name | hire_date | salary | dept_id |
+--------+--------------+------------+--------+---------+
| 1 | Ethan Hunt | 2001-05-01 | 5000 | 4 |
| 2 | Tony Montana | 2002-07-15 | 6500 | 1 |
| 3 | Sarah Connor | 2005-10-18 | 8000 | 5 |
| 4 | Rick Deckard | 2007-01-03 | 7200 | 3 |
| 5 | Martin Blank | 2008-06-24 | 5600 | NULL |
+--------+--------------+------------+--------+---------+
如你所见,它返回 employees 表中的所有行和列。
提示: 星号(*
)是一个通配符,表示一切。例如, SELECT
上面示例的语句中的星号字符是 employees 表的所有列的简写替代。
从表中选择列
如果你不需要所有数据,则可以选择特定列,如下所示:
SELECT emp_id, emp_name, hire_date, salary
FROM employees;
执行上面的语句后,你将获得如下输出:
+--------+--------------+------------+--------+
| emp_id | emp_name | hire_date | salary |
+--------+--------------+------------+--------+
| 1 | Ethan Hunt | 1995-10-30 | 5000 |
| 2 | Tony Montana | 1990-07-15 | 6500 |
| 3 | Sarah Connor | 2011-04-13 | 5600 |
| 4 | Rick Deckard | 2005-10-18 | 7200 |
| 5 | Martin Blank | 1996-05-24 | 8000 |
+--------+--------------+------------+--------+
正如你所看到的,结果集中没有 dept_id 列。在下一章中,我们将学习如何根据条件从表中选择记录。