Php 如何正确优化mysql select语句

Php 如何正确优化mysql select语句,php,mysql,sql,mysqli,Php,Mysql,Sql,Mysqli,我有一个网页,分为不同的部分。每个部分必须显示不同的结果。这些结果来自数据库。 这是SQLFIDLE上的一个示例数据 下面的代码是我想到的,但我担心当不同的人多次访问此页面时,它可能会以某种方式使服务器过载 $sectionA = $connect->query("SELECT * FROM Main_Section WHERE section = `A` "); while ($row = $sectionA->fetch_array(MYSQLI_BOTH)) {

我有一个网页,分为不同的部分。每个部分必须显示不同的结果。这些结果来自数据库。 这是SQLFIDLE上的一个示例数据

下面的代码是我想到的,但我担心当不同的人多次访问此页面时,它可能会以某种方式使服务器过载

$sectionA = $connect->query("SELECT * FROM Main_Section WHERE section = `A` 
"); 
while ($row = $sectionA->fetch_array(MYSQLI_BOTH))
{
    $id = $row["id"];
    $name = $row["name"];
    $sec_result_a = $sec_result_a.'<p>'.$id.'</p><h3>'.$name.'</h3>';
}

$sectionB = $connect->query("SELECT * FROM Main_Section WHERE section = `B` "); 
while ($row = $sectionB->fetch_array(MYSQLI_BOTH))
{
    $id = $row["id"];
    $name = $row["name"];
    $sec_result_b = $sec_result_b.'<p>'.$id.'</p><h3>'.$name.'</h3>';
}

$sectionC = $connect->query("SELECT * FROM Main_Section WHERE section = `C` "); 
while ($row = $sectionC->fetch_array(MYSQLI_BOTH))
{
    $id = $row["id"];
    $name = $row["name"];
    $sec_result_c= $sec_result_c.'<p>'.$id.'</p><h3>'.$name.'</h3>';
}
$sectionA=$connect->query(“从Section=`A`
"); 
而($row=$sectionA->fetch_数组(MYSQLI_两者))
{
$id=$row[“id”];
$name=$row[“name”];
$sec_result_a=$sec_result_a.“”.$id.

“.$name.”; } $sectionB=$connect->query(“从Section=`B`所在的主_部分中选择*”; while($row=$sectionB->fetch_数组(MYSQLI_两者)) { $id=$row[“id”]; $name=$row[“name”]; $sec_result_b=$sec_result_b.“”.$id.

“.$name.”; } $sectionC=$connect->query(“从Section=`C`所在的主_部分中选择*”; while($row=$sectionC->fetch_数组(MYSQLI_两者)) { $id=$row[“id”]; $name=$row[“name”]; $sec_result_c=$sec_result_c.“”.$id.

“.$name.”; }
至Z段


有没有一种方法可以适当地对此进行优化?

除非图片有更多内容,为什么不按部分顺序查询所有内容,以获得a-Z:

SELECT * FROM Main_Section ORDER BY section
。。。然后用一个循环处理结果,这个循环可能看起来像这样:

$sections = $connect->query("SELECT * FROM Main_Section ORDER BY section"); 

while ($row = $sections->fetch_array())
{
    echo $row['section'] . ' ' . '<p>' . $row['id'] . '</p><h3>' . $row['firstname'] . ' ' . $row['lastname'] . '</h3>'; 
}
$sections=$connect->query(“按节顺序从主节中选择*);
而($row=$sections->fetch_array())
{
echo$row['section'].''.$row['id'..

'.$row['firstname'.'.'.'.$row['lastname'.'; }
编辑您的问题并提供示例数据和所需结果。您的表上似乎没有任何索引。在
部分
列上创建
索引
。此外,请提供有关您的问题和预期结果的更多信息。您面临的挑战是什么?您的表中有多少条记录?