MySQL 查询语句

MySQL 查询语句

SQL SELECT 命令用于从MySQL数据库中获取数据。您可以在mysql> 提示符下使用此命令,也可以在任何脚本(如PHP)中使用。

语法

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

SELECT field1, field2,...fieldN 
FROM table_name1, table_name2...
[WHERE Clause]
[OFFSET M ][LIMIT N]
  • 你可以使用用逗号分隔的一个或多个表来在WHERE子句中包含不同的条件,但WHERE子句是SELECT命令的可选部分。

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

  • 你可以在字段的位置指定星号(*)。在这种情况下,SELECT将返回所有字段。

  • 你可以使用WHERE子句指定任何条件。

  • 你可以使用 OFFSET 指定一个偏移量,从这个位置开始返回记录。默认情况下,偏移量从零开始。

  • 你可以使用 LIMIT 属性限制返回的数量。

从命令提示符中提取数据

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

示例

以下示例将返回 tutorials_tbl 表中的所有记录:

root@host# mysql -u root -p password;
Enter password:*******
mysql> use TUTORIALS;
Database changed
mysql> SELECT * from tutorials_tbl 
+-------------+----------------+-----------------+-----------------+
| tutorial_id | tutorial_title | tutorial_author | submission_date |
+-------------+----------------+-----------------+-----------------+
|           1 | Learn PHP      | John Poul       | 2007-05-21      |
|           2 | Learn MySQL    | Abdul S         | 2007-05-21      |
|           3 | JAVA Tutorial  | Sanjay          | 2007-05-21      |
+-------------+----------------+-----------------+-----------------+
3 rows in set (0.01 sec)

mysql>

使用PHP脚本获取数据

PHP使用mysqli_query()或mysql_query()函数从MySQL表中选择记录。此函数接受两个参数并在成功时返回TRUE,失败时返回FALSE。

语法

$mysqli->query($sql,$resultmode)
编号 参数和描述
1 $sql 必需 – 用于从MySQL表中选择记录的SQL查询。
2 $resultmode 可选 – 根据所需的行为,可以是常量MYSQLI_USE_RESULT或MYSQLI_STORE_RESULT。默认情况下,使用MYSQLI_STORE_RESULT。

示例

尝试以下示例从表中选择记录 –

将以下示例复制并粘贴为 mysql_example.php –

<html>
   <head>
      <title>Creating MySQL Table</title>
   </head>
   <body>
      <?php
         dbhost = 'localhost';dbuser = 'root';
         dbpass = 'root@123';dbname = 'TUTORIALS';
         mysqli = new mysqli(dbhost, dbuser,dbpass, dbname);

         if(mysqli->connect_errno ) {
            printf("Connect failed: %s<br />", mysqli->connect_error);
            exit();
         }
         printf('Connected successfully.<br />');sql = "SELECT tutorial_id, tutorial_title, tutorial_author, submission_date FROM tutorials_tbl";

         result =mysqli->query(sql);

         if (result->num_rows > 0) {
            while(row =result->fetch_assoc()) {
               printf("Id: %s, Title: %s, Author: %s, Date: %d <br />", 
                  row["tutorial_id"],row["tutorial_title"], 
                  row["tutorial_author"],row["submission_date"]);               
            }
         } else {
            printf('No record found.<br />');
         }
         mysqli_free_result(result);mysqli->close();
      ?>
   </body>
</html>

输出

访问部署在 Apache web 服务器上的 mysql_example.php,并验证输出结果。在运行选择脚本之前,我们在表中输入了多条记录。

Connected successfully.
Id: 1, Title: MySQL Tutorial, Author: Mahesh, Date: 2021
Id: 2, Title: HTML Tutorial, Author: Mahesh, Date: 2021
Id: 3, Title: PHP Tutorial, Author: Mahesh, Date: 2021
Id: 4, Title: Java Tutorial, Author: Mahesh, Date: 2021
Id: 5, Title: Apache Tutorial, Author: Suresh, Date: 2021

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程