Mysql 简明教程

MySQL - Select Query

在上一个教程中学到了如何创建 MySQL 表并向其中插入值,然后下一步就是检查表中是否记录了值。为此,必须使用 SELECT 语句来检索并查看具体表中的记录。

MySQL Select Statement

MySQL SELECT 命令用于从 MySQL 数据库中以结果表的形式获取数据。这些结果表称为结果集。

Note − 可以在 'mysql>' 提示符下以及在任何脚本(例如 PHP、Node.js、Java、python 等)中使用此命令。

Syntax

以下是用于从 MySQL 表格中获取数据的 SELECT 命令的通用 SQL 语法 -

SELECT field1, field2,...fieldN
FROM table_name1, table_name2...
[WHERE Clause]
[OFFSET M ][LIMIT N]
  1. 您可以使用一个或多个用逗号分隔的表格,使用一个 WHERE 子句包含各种条件,但 WHERE 子句是 SELECT 命令的可选部分。

  2. 可以在一个 SELECT 命令中获取一个或多个字段。

  3. 可以在字段处指定星号 (*)。在这种情况下,SELECT 将返回所有字段。

  4. 我们可以使用 WHERE 子句指定任何条件。

  5. 可以使用 OFFSET 指定偏移量,SELECT 将从此偏移量开始返回记录。默认情况下,偏移量从零开始。

  6. 可以使用 LIMIT 属性限制返回记录数。

Fetching Data Using SELECT from Command Prompt

这将使用 SQL SELECT 命令从 MySQL 表中获取数据。

Example

首先,让我们使用以下查询创建一个名为 CUSTOMERS 的表:

CREATE TABLE CUSTOMERS (
   ID INT NOT NULL,
   NAME VARCHAR(20) NOT NULL,
   AGE INT NOT NULL,
   ADDRESS CHAR (25),
   SALARY DECIMAL (18, 2),
   PRIMARY KEY (ID)
);

以下查询在上述创建的表中插入 7 条记录 −

INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY) VALUES
(1, 'Ramesh', 32, 'Ahmedabad', 2000.00 ),
(2, 'Khilan', 25, 'Delhi', 1500.00 ),
(3, 'Kaushik', 23, 'Kota', 2000.00 ),
(4, 'Chaitali', 25, 'Mumbai', 6500.00 ),
(5, 'Hardik', 27, 'Bhopal', 8500.00 ),
(6, 'Komal', 22, 'Hyderabad', 4500.00 ),
(7, 'Muffy', 24, 'Indore', 10000.00 );

To Retrieve All Fields

现在,要检索 CUSTOMERS 表中存在的所有数据,使用以下 SELECT 语句:

SELECT * from CUSTOMERS;

CUSTOMERS 表中存在以下记录:

To Retrieve Selective Fields

在这里,仅检索 CUSTOMERS 表中存在的三个列/字段 IDNAMEADDRESS ,使用以下查询:

SELECT ID, NAME, ADDRESS FROM CUSTOMERS;

执行给定的查询后,输出如下:

Computing using SELECT in Command Prompt

SELECT 语句不仅仅用于从表中获取数据,还可用于以表格形式获取数学计算的结果。在这些情况下,不必在 SELECT 语句中提到特定的数据库表。

以下是执行此操作的语法 −

SELECT [math_computation];

Example

在以下示例中,让我们使用 SELECT 语句解决数学计算:

SELECT 46475*453;

Output

程序查询输出如下:

Aliasing a Column in SELECT Statement

MySQL 数据库提供了一种方法,即在显示时将列名别名为更易于理解且相对的名称。这是使用 'AS' 关键字完成的。此关键字也在 SELECT 语句中使用。

以下是执行此操作的语法 −

SELECT column_name AS alias_name FROM table_name;

您还可以使用别名,以相同的语法显示所选表达式;您应该在语法中使用选择表达式代替 column_name。

Example

在下面的示例中,我们正在从之前创建的 CUSTOMERS 表中检索 ID 列。我们将 ID 列别名为 "Identity_Document" ——

SELECT ID AS Identity_Document FROM CUSTOMERS;

正如我们看到的那样,已经使用别名“Identity_Document”而不是“ID”。

Select Query into MySQL Database Using a Client Program

除了使用 SELECT 查询从表中获取数据之外,您还可以使用客户端程序对表执行 SELECT 操作。

Syntax

以下是此操作在各种编程语言中的语法 −

Example

以下是这些程序 −