2010-10-02 3 views
1

Хорошо, вот оно. У меня есть две таблицы: продукты и product_sizesвнутренние соединения таблицы mysql

так в основном моя таблица продукт идентификатор (первичный ключ), имя (название продукта) и size_id (внешний ключ из product_sizes)

мой стол product_sizes предопределила значения:

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

и здесь у меня есть рабочий код, отображающий таблицы продуктов (в 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 

может кто-то научить меня, как это сделать .. мне это нужно срочно для моего окончательного проекта. Спасибо. извините за мое объяснение им не хорошо на английском.

ответ

2

Используйте 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> 
<? } ?> 
+0

Как я могу отобразить его в html? –

+0

@kester martinez: Я добавил часть PHP ... –

+0

спасибо, что попробовали сейчас –