我有两个名为
的mysql表博客
评论
我想要检索以下列
使用blog_id从评论表中user_name
comment_desc
。
这两个表都有blog_id的共同点。
下面是两个sql表的截图
评论表:
博客表:
我用这种方式尝试了查询。
SELECT blog.blog_id, comment.user_name, comment.comment_desc
FROM
blog (b)
INNER JOIN
comment (c)
ON b.blog_id = c.blog_id
我没有权限上传图片,这就是我上传到photobucket的原因。
PHP代码......
<?php
$comments_set = blog_comments();
var_dump($comments_set);
while($comments_all = mysql_fetch_assoc($comments_set)){
$name = $comments_all['user_name'];
$desc = $comments_all['comment_desc'];
echo
"<ol class=\"commentlist clearfix\">
<li class=\"comment even thread-even depth-1\" id=\"li-comment-1\">
<div id=\"comment-1\" class=\"comment-wrap clearfix\">
<div class=\"comment-meta\">
<div class=\"comment-author vcard\">
<span class=\"comment-avatar clearfix\">
<img alt='' src='http://0.gravatar.com/avatar/ad516503a11cd5ca435acc9bb6523536?s=60' class='avatar avatar-60 photo avatar-default' height='60' width='60' /></span>
</div>
</div>
<div class=\"comment-content clearfix\">
<div class=\"comment-author\">$name<span><a href=\"#\" title=\"Permalink to this comment\">January 24, 2013 at 10:46 am</a> · <a class='comment-reply-link' href=\"#\">Reply</a></span></div>
<p>$desc</p>
</div>
</div>
</li>
</ol>
";
}
?>
答案 0 :(得分:1)
您user_name
表desc
和comment
需要blog_ig
为什么你需要加入这两个表呢?您可以通过博客ID
从评论表中检索信息 select * from comments where blog_id='blog_id'
答案 1 :(得分:0)
我认为你应该选择Left Join,因为可能你想要显示博客是否有评论。
SELECT b.blog_id, c.user_name, c.comment_desc
FROM
blog as b
LEFT JOIN
comment as c
ON b.blog_id = c.blog_id
答案 2 :(得分:0)
您正在使用别名,因此在SELECT
语句时,请通过别名指定它。您需要删除别名名称旁边的括号...
SELECT b.blog_id, c.user_name, c.comment_desc
FROM
blog b
INNER JOIN
comment c
ON b.blog_id = c.blog_id
答案 3 :(得分:0)
我认为您错误地定义了blog_id列。请检查列的数据类型和大小。 连接表时会失败。 如果您可以粘贴错误,那将会更有帮助
感谢。