MySQL SELECT语句
简介:在本教程中,您将学习如何使用MySQL SELECT语句的基本形式从表中查询数据。
MySQL SELECT语句简介
SELECT语句使您可以从一个或多个表中读取数据。
要在MySQL中编写SELECT语句,请遵循以下语法:
SELECT select_list FROM table_name;
让我们看一下语句的每个部分。
首先,从SELECT关键字开始。
关键字在MySQL中具有特殊含义。
在这种情况下,SELECT指示MySQL检索数据。
接下来,您有空间,然后是要在结果中显示的列或表达式的列表。
然后,您有了FROM关键字,空格和表名。
最后,您有了分号;在声明的末尾。
分号;是语句定界符。
它指定语句的结尾。
如果有两个或多个语句,请使用分号;分隔它们,以便MySQL分别执行每个语句。
在SELECT语句中,SELECT和FROM是关键字,用大写字母表示。
基本上,它只是关于格式化。
大写字母使关键字脱颖而出。
由于SQL不是区分大小写的语言,因此您可以使用小写形式编写关键字,例如select和from,代码仍将运行。
同样重要的是要注意FROM关键字在换行符上。
MySQL不需要这个。
但是,将FROM关键字放在新行上将使查询更易于阅读和维护。
在评估SELECT语句时,MySQL首先评估FROM子句,然后评估SELECT子句:
MySQL SELECT语句示例
我们将使用示例数据库中的表employee来演示如何使用SELECT语句:
员工表有八列:员工编号,姓氏,名字,分机号,电子邮件,办公代码,报告和职务。
它也有很多行,如下图所示:
A)使用MySQL SELECT语句从单列示例中检索数据
下面的示例使用SELECT语句选择所有雇员的姓氏:
SELECT lastName FROM employees;
这是部分输出:
SELECT语句的输出称为结果或结果集,因为它是查询产生的一组数据。
B)使用MySQL SELECT语句从多个列查询数据的示例
下面的示例使用SELECT语句获取员工的名字,姓氏和职务:
SELECT lastname, firstname, jobtitle FROM employees;
即使雇员表有很多列,SELECT语句也只返回表中所有行的三列数据,如下图所示:
下图显示了结果集:
C)使用MySQL SELECT语句从所有列中检索数据的示例
如果要从employees表的所有列中检索数据,则可以在SELECT子句中指定所有列名。
或者您只使用星号(*)速记,如以下查询所示:
SELECT * FROM employees;
该查询从employees表的所有列中返回数据。
关于SELECT明星的注意事项
SELECT *
通常称为"全选星标"或"全选",因为您从表中选择了所有数据。
最好将SELECT *
仅用于自组网查询(ad-hoc query )。
如果将SELECT语句嵌入到PHP,Java,Python,Node.js等代码中,则由于以下原因,应显式指定要从中获取数据的列的名称:
SELECT *
从您可能不使用的列返回数据。
它在MySQL数据库服务器和应用程序之间产生不必要的I / O磁盘和网络流量。当您明确指定列名时,结果集是可预测的,并且易于管理。
但是,如果使用SELECT *
,并且有人通过添加更多列来更改表,则最终结果集将与您期望的结果集不同。使用
SELECT *
可能会将敏感信息暴露给未经授权的用户。
在本教程中,您学习了如何使用基本的MySQL SELECT语句从单个表中查询数据。