@Bearax

Как вывести данные из базы данных сравнив результат?

Добрый день. У меня такая задача, возможно легкая для вас, но сложная для меня на данный момент. Есть база данных с таблицами. Допустим есть таблицы: product_description и product_article. Внутри которых имеются данные товаров с сайта, в обеих таблицах имеется строка - product ID они одинаковые в обеих таблицах и привязаны к определенному товару. Задача такая: Нужно вывести данные из строки name из таблицы product_description и строку price из таблицы product_article. При этом, чтобы при выводе price он находил именно тот name по столбцу product IDи присваивался именно к нему.

Пример: У нас есть товар Футболка NIKE с ценой 4000 рублей. Футболка NIKE здесь - name из product_description, а 4000 рублей здесь - price из product_article. У этого продукта общий product ID допустим равный 100. Нужно отправлять SQL запрос, чтобы сравнив product ID он вывел название товара и именно его же цену рядом с ним.

Вот что сейчас есть у меня:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<?php
require_once 'config.php'; // подключаем скрипт
 
$link = mysqli_connect($host, $user, $password, $database) 
    or die("Ошибка " . mysqli_error($link)); 
     
$query ="SELECT oc_product_description.name, oc_product.price FROM oc_product_description, oc_product";
 
$result = mysqli_query($link, $query) or die("Ошибка " . mysqli_error($link)); 
if($result)
{
    $rows = mysqli_num_rows($result); // количество полученных строк
     
    echo "<table><tr><th>Имя товара</th><th>МРЦ</th><th>Цена в нашем магазине</th></tr>";
    for ($i = 0 ; $i < $rows ; ++$i)
    {
        $row = mysqli_fetch_row($result);
        echo "<tr>";
            for ($j = 0 ; $j < 3 ; ++$j) echo "<td>$row[$j]</td>";
        echo "</tr>";
    }
    echo "</table>";
     
    // очищаем результат
    mysqli_free_result($result);
}
 
mysqli_close($link);
?>
</body>
</html>
  • Вопрос задан
  • 57 просмотров
Пригласить эксперта
Ответы на вопрос 1
idShura
@idShura
select pd.product_id, 
        pd.name 
        pa.price
   from product_description  pd
        left join product_article pa on pa.product_id = pd.product_id
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы