簡體   English   中英

在一個PHP頁面中返回多個SQL查詢的更好方法

[英]Better Way to return multiple SQL Queries in one PHP page

我正在寫一個網站來比較汽車以學習和理解PHP。 我有一個汽車的sql表-比如說福特-在另一個表中它的公司ID為1。 表格中還有一個ModelLinkNo列,用於將福特的轎車轎車與寶馬的轎車轎車聯系在一起(companyId為2)。

我想首先顯示所有福特公司的汽車的清單,所以我的查詢如下:

$getFordCars = sprintf("SELECT * FROM Cars WHERE CompanyId = '1'");

然后,我在下面有多個其他查詢,以帶回其他同型號的汽車-如下所示:

$getSaloonCars = sprintf("SELECT * FROM CarsWHERE (CompanyId != '1' AND ModelLinkNo = '1')");

然后還有其他查詢,用於獲取4 * 4s,掀背車,敞篷車等。

數據從數據庫正常返回,我將其寫入數組,如下所示:

<?php
    $fordCars = array();
    $otherSaloonCars = array();
    $i = 0;
    while($row = mysql_fetch_array($fordCarsResult))
    {
        $fordCars [$i]= $row['ModelName'];
        $i++;
    }
    $j = 0;
    while($row2 = mysql_fetch_array($otherSaloonCarsResult))
    {
        $otherSaloonCars [$j]= $row2['ModelName'];
        $j++;
    }
?>

上面的方法有效,然后我可以檢索數據以在頁面中進一步顯示-但是有比這樣做更好的方法,而不是有多個while循環-當我返回所有可轉換模型時,這將是另一個查詢並返回4 * 4這將是另一個查詢,並使用我現在使用的模式,這將導致為每個查詢編寫一個while循環以將結果寫入數組

好吧,如何僅下載每輛福特汽車,並檢查您的后端站點(如果CompanyId為1),然后將數據推送到給定的數組呢?

如果需要,還可以考慮查找將Cars表自身加入JOIN。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM