好的,这是。我有两个表:product和product_sizes

所以基本上我的产品表具有id(主键),名称(产品名称)和size_id(product_sizes中的外键)

我的product_sizes表具有预定值:

size_id      name
------------------
1            1x1
2            2x2
3            3x3

在这里,我有一个有效的代码来显示产品表(使用while代码以html格式):
id      name         size_id
-----------------------------
1      product 1         1
2      product 2         2
3      product 3         1

我的问题是我想显示(用html表示)尺寸名称而不是其size_id,类似于以下示例:
id      name         size_id
-----------------------------
1      product 1        1x1
2      product 2        2x2
3      product 3        1x1

有人可以教我该怎么做吗?..我迫切需要它来完成我的最终项目。谢谢你。对不起,我的解释不好,我的英语不好。

最佳答案

使用JOIN:

SELECT p.id,
       p.name,
       ps.name AS size_name
  FROM PRODUCT p
  JOIN PRODUCT_SIZES ps ON ps.size_id = p.size_id

参见this link of a visual representation of the various JOINs
<? include ("conn.php");
   $sql = "SELECT p.id,
                  p.name,
                  ps.name AS size_name
             FROM PRODUCT p
             JOIN PRODUCT_SIZES ps ON ps.size_id = p.size_id";
   $result = mysql_query($sql, $connection) or die(mysql_error());
   while($row = mysql_fetch_array($result)) {
?>
<tr>
  <td><? echo $row['id']; ?></td>
  <td><? echo $row['name']; ?></td>
  <td><? echo $row['size_name']; ?></td>
</tr>
<? } ?>

关于php - 内部连接mysql表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3844435/

10-11 08:23