2017-05-12 42 views
0

我有3个互相链接的表格。Echo商店名称与所有类别一起

store_manufacture -------------- 分类 -------------------------- Store_Categories

-----------------  --------------------   ----------------------- 
sm_id | sm_name   cat_id | cat_name   sc_id|store_id|cat_id 
-----------------  --------------------   ----------------------- 
12 | HP     1 | Travel    1 | 12 | 1 
          2 | Health    2 | 12 | 2 
          3 | Electronics   3 | 12 | 3 

我想与所有的类别ID,我有张贴到下一page.Here一次显示STORENAME是我已经尝试了代码:

PHP

$cat_fetch=mysqli_query($con,"SELECT 
sm_id,sm_brand_name,cat_id,sm_image,sm_link FROM `store_manufacture` sm 
INNER JOIN store_category sc ON sc.store_id=sm.sm_id"); 
while($row=mysqli_fetch_array($cat_fetch,MYSQLI_ASSOC){ 
$id=$row['sm_id']; 
echo " <h5> <a href=''>" .$row['sm_brand_name']." ". $row['cat_id']."</a></h5>"; 
} 

输出

enter image description here

所需的输出

HP (Travel, Health,Electronics) 
+0

斯图在'GROUP_CONCAT()'和'GROUP BY'上加分。 –

回答

0
"SELECT 
sm.sm_name,GROUP_CONCAT(c.cat_name) as cat_name FROM `store_manufacture` sm , Categories c, Store_Categories sc 
where sm.sm_id = sc.store_id AND c.cat_id = sc.cat_id GROUP BY sm.sm_id"; 

这是查询你应该运行的希望这会帮助你

+0

该查询完美无缺!但是如何回显'cat_name'呢?它给出了一个错误。 '$ row ['cat_name']'**错误:**'未定义的索引:cat_name' – tabia

+1

'GROUP_CONCAT(c.cat_name)as cat_name'只是更新查询。 –

+0

@DanyalSandeelo谢谢!! – tabia

相关问题