关系 MySQL PHP

Relational MySQL PHP

我有一个名为 "prices" 的 table,其中我有两个字段,我引用了另外两个名为 "prodcuts" 和 "supliers" 的 table。在 "prices" table 中,我确实引用了 "prodcuts" 和 "supliers" 的 "id",我需要在 [=36= 中获取两者的名称] 代码...我目前只有这个,但我不知道如何让它工作:

$result = mysqli_query($conn, "SELECT * FROM prices") or die("Could not find");

  if (mysqli_num_rows($result) > 0) {
     while ($rr = mysqli_fetch_assoc($result)) { 
         $a = $rr['id'];
         $b = $rr['date'];
         $c = $rr['product'];
         $d = $rr['suplier'];
         $e = $rr['quantity'];
         $f = $rr['packaging'];
         $g = $rr['event'];
         $h = $rr['price'];

         $prov .="
               <tr>                                  
                 <td>".$b."</td>
                 <td><a href='productos-result.php?search=".$c."'>".$c."</a></td>
                 <td><a href='proveedores-result.php?search=".$d."'>".$d."</a></td>
                 <td>".$e."</td>
                 <td>".$g."</td>
                 <td>$".$h."</td>    
               </tr>";
        }
} 

我需要显示产品名称 $c 和供应商 $d 而不是 id,我的 table 是这样的:

价格

id, date, productid, supplierid, quantity, event, price

产品

ID、姓名、描述

供应商

ID、姓名、描述

更改您的查询以加入产品和供应商,并在列列表中使用您想要的别名。

SELECT prices.id,
       prices.date,
       product.name product,
       suplier.name suplier,
       prices.quantity,
       prices.packaging,
       prices.event,
       prices.price
       FROM prices
            INNER JOIN product
                       ON product.id = prices.productid
            INNER JOIN suplier
                       ON suplier.id = prices.suplierid;

(如果您的价格没有供应商或产品但仍想显示它们(名称为空),请将 INNER JOIN 更改为 LEFT JOIN。)