mySQL查询不能正常工作

时间:2012-05-10 12:46:38

标签: mysql

我需要从数据库中获取所有评论,其中博客的作者是特定数字。除了我的SQL查询没有使用正确的作者ID。

这是我的疑问:

SELECT em_comments.*, em_users.nickname
FROM em_comments
INNER JOIN em_posts ON em_posts.id = em_comments.post
INNER JOIN em_users ON em_users.id = em_comments.author
WHERE em_posts.author = 1
ORDER BY date DESC 

正如你所看到的,它应该只得到帖子的作者所在的帖子的评论。我得到的结果是4条评论,但总共有6条评论应该从数据库中。

我知道问题出在

的某个地方
WHERE em_posts.author = 1

因为某些查询如何仅返回评论作者的评论1.但是它应该返回帖子作者为1的所有帖子的所有评论。

任何人对如何解决这个问题都有任何想法?

先谢谢, 标记

编辑:

评论表结构+数据

id | post | author | date                 | content
6    7      1       2012-05-10 12:30:25     Dat weet hij zelf ook xD
5    6      1       2012-05-10 12:30:12     yup
1    1      1       2012-05-09 13:39:34     Whoop Whoop! Eerste comment test! xD
2    1      1       2012-05-10 12:27:49     Nice. tweede comment werkt nu ook
3    1      1       2012-05-10 12:29:45     Nice. tweede comment werkt nu ook 
4    1      1       2012-05-10 12:30:00     Nice. tweede comment werkt nu ook

帖子表结构+数据

id | author | date                | content                                                 | title    
7    1        2012-05-09 19:42:33   Mark is nog topper geworden vandaag. xD                   Mark is nog cooler
6    1        2012-05-09 19:30:27   Mark is top!                                              Mark
1    1        2012-05-07 19:21:03   lol test met 'quotes' en "dubbele q...     Whoop Whoop!

用户表结构+数据

id | nickname
1    Mark
2    Kevin

1 个答案:

答案 0 :(得分:1)

内部联接排除ON子句中具有NULL值的行。检查列中行的值以查看是否有任何值为NULL。