我确信这是一项简单的任务,但由于某种原因,我找不到资源来帮助我为我正在编写的网站执行JOIN。
我基本上有一个Category表和一个Member表,其中包含一个cat_id,对应于所述Categories。
我目前有一个do while循环正在运行,所以它显示表中的所有分类,但是,如果Members表中有一条记录具有相应的cat_id,我现在只想显示Category表中的分类。这将帮助我,当我添加一个新成员时,目录将自动出现在网站上。
我当前的代码是;
<?php
$cat_sql="SELECT * FROM Categories ORDER BY Category";
$cat_query=mysqli_query ($conn, $cat_sql);
$cat_result=mysqli_fetch_assoc($cat_query);
?>
<?php do { ?>
<p> <a id="<?php echo ($cat_result['catagory']); ?>"</a>
echo $cat_result['category']; ?> </p>
<?php } while ($cat_result=mysqli_fetch_assoc($cat_query)) ?>
感谢任何帮助,因为我在网上找不到有这个例子的资源。
在sql中使用连接,如下
SELECT c.* FROM Categories as c
INNER JOIN Members as m on c.id=m.cat_id
ORDER BY c.Category
这假设Categories.id是一个与Members.cat_id相对应的列,INNER JOIN将只显示两个表中可用的结果。