📜  MySQLi-选择查询

📅  最后修改于: 2020-11-27 06:16:03             🧑  作者: Mango


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

句法

这是SELECT命令的通用SQL语法,用于从MySQLi表中获取数据-

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

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

  • 您可以指定星号(*)代替字段。在这种情况下,SELECT将返回所有字段。

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

  • 您可以使用OFFSET指定偏移量,SELECT将从该偏移量开始返回记录。默认情况下,偏移量为零。

  • 您可以使用LIMIT属性限制退货数量。

从命令提示符获取数据-

这将使用SQL SELECT命令从MySQLi表tutorials_tbl获取数据

以下示例将返回tutorials_inf表中的所有记录-

root@host# mysql -u root -p password;
Enter password:*******

mysql> use TUTORIALS;
Database changed

mysql> SELECT * from tutorials_inf;
+----+------+
| id | name |
+----+------+
|  1 | sai  |
|  2 | kit  |
|  3 | ram  |
+----+------+
3 rows in set (0.00 sec)

mysql>

使用PHP脚本获取数据

您可以在PHP函数mysqli_query()中使用相同的SQL SELECT命令。该函数用于执行SQL命令,以后可以使用另一个PHP函数mysqli_fetch_assoc()来获取所有选定的数据。此函数以关联数组和/或数字数组的形式返回row。如果没有更多行,此函数将返回FALSE。

下面是一个简单的示例,可从tutorials_inf表中获取记录。

尝试下面的示例来显示tutorials_inf表中的所有记录。

Selecting Table in MySQLi Server
   

   
      ';
         $sql = 'SELECT name FROM tutorials_inf';
         $result = mysqli_query($conn, $sql);

         if (mysqli_num_rows($result) > 0) {
            while($row = mysqli_fetch_assoc($result)) {
               echo "Name: " . $row["name"]. "
"; } } else { echo "0 results"; } mysqli_close($conn); ?>

将行的内容分配给变量$ row,然后打印行中的值。

注意-当您想将数组值直接插入字符串时,请始终记住使用大括号。

样本输出应该像这样-

Connected successfully
Name: ram
Name: kit
Name: abc