我正在尝试将MySQL中两个表的数据与PHP结合起来。
我想从“posts”表中选择所有数据(id,title,post_by,content和created_at)。
如果comment_id等于帖子ID,我想从“评论”表中选择comment_id COUNT。
最后,我想在此订单上回复/打印一些内容:
<? echo $row->title; ?>
Posted by <? echo $row->post_by; ?> on <? echo $row->created_at; ?> CST
<? echo $row->content; ?>
<? echo $row->comment_id; ?> comments | <a href="comment.php?id=<? echo $row->id; ?>">view/post comments</a>
我不确定如何“组合”来自两个表的数据。我尝试了很多东西,花了几个晚上,没有运气。
非常感谢任何帮助!
答案 0 :(得分:1)
您正在寻找的是一个加入
select * from posts p
inner join comments c on p.post_id = c.comment_id
要计算所有帖子的评论行数,可以使用嵌套的select语句:
select count(comment_id) from comments c
where comment_id in (select id from posts)
答案 1 :(得分:0)
SELECT p.id, p.title, p.post_by, p.content, p.created_at, Count(c.comment_id)
FROM posts p
LEFT JOIN comments c on p.post_id = c.comment_id
GROUP BY p.id, p.title, p.post_by, p.content, p.created_at