簡體   English   中英

顯示其他表中的mysql數據庫數據

[英]Show mysql database data from other table

我有兩張桌子。 advt ,第二category 我需要顯示表類別中的數據,其中cat_id來自advt 我無法顯示類別。

我的問題是如何顯示類別,子類別和子貓名稱,而不是cat_id 我能夠顯示cat_id但無法顯示category表中的類別名稱,其中名稱為product

表Adv:

在此處輸入圖片說明

表-類別:

在此處輸入圖片說明

我的PHP代碼如下:

<?php 
include('include/config.php');


if($stmt = $connection->prepare("SELECT 
                                 a.ad_id, 
                                 a.cus_id,
                                 a.ad_name,
                                 a.category,
                                 a.subcategory,
                                 a.subcat
                                 FROM `advt` a 
                                 INNER JOIN `category` b
                                 ON a.category = b.cat_id AND a.subcategory = b.cat_id AND a.subcat = b.cat_id GROUP BY a.ad_id
                                 ")){ 


       $stmt->execute(); 
       $stmt->store_result(); 
       $stmt->bind_result($ad_id, $cus_id, $ad_name, $category, $subcategory, $subcat);   

       while($stmt->fetch()){ 
       ?>

        <tr class="example">
            <td><a href="details1/<?php echo $cus_id;?>/<?php echo $ad_id;?>"><?php echo  "<img src=ad/data/img/$cus_id/$ad_id/$img_name  width='180' height='120'><br>";?></a></td>
            <td><?php echo $ad_id; ?></td>
            <td><?php echo $cus_id; ?></td>
            <td><?php echo $ad_name; ?></td>
            <td><?php echo $category; ?></td>
            <td><?php echo $subcategory; ?></td>
            <td><?php echo $subcat; ?></td>
         </tr>

        <?php
       } 
       $stmt->close();
       } 

?>

如果您的類別,子類別和subcat都是對類別表的引用,則可以通過使用以下查詢來獲取類別的名稱:

SELECT 
    a.ad_id, 
    a.cus_id,
    a.ad_name,
    b.product as category,
    c.product as subcategory,
    d.product as subcat
FROM `advt` a 
INNER JOIN `category` b
ON a.category = b.cat_id 
INNER JOIN `category` c
ON a.subcategory = c.cat_id 
INNER JOIN `category` d
ON a.subcat = d.cat_id 

如果只需要類別名稱,請使用以下查詢。

cat_id上的兩個表都JOIN在一起,然后將產品添加到SELECT部分中,然后刪除GROUP BY (我們假設category表不會有重復的cat_id )。

SELECT a.ad_id, 
       a.cus_id,
       a.ad_name,
       a.category,
       a.subcategory,
       a.subcat,
       b.product
FROM `advt` a 
INNER JOIN `category` b ON a.category = b.cat_id 

暫無
暫無

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

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