我有 3 个表,tbl_topic、tbl_comment、tbl_user。我想选择用户创建的所有主题以及他评论过的主题,即使他不是创建者。这是我的数据库:
tbl_topic
----------
topic_id
topic_title
user_id
tbl_comment
----------
comment_id
comment_message
user_id
topic_id
tbl_user
----------
user_id
user_name
非常需要它。谢谢!
到目前为止我得到了这个
select * from tbl_topic T inner join tbl_comment C on T.topic_id = C.topic_id inner join tbl_user U on T.user_id = U.user_id GROUP BY T.topic_id
我的问题是它只返回有评论的主题。我想包括用户创建的主题,即使它有 0 条评论。
我希望结果是这样的:
+-----------+-----------+----------+-------------+----------------+----------+-------
| topic_id | topic_title | user_id | comment_id | comment_message | user_id | topic_id |
+-----------+-----------+----------+-------------+----------------+----------+--------
| 1 | my topic | 1 | 1 | comment me | 1 | 1
| 2 | others | 2 | 2 | comment me | 1 | 2
| 3 | my nocoment| 1 | NULL | NULL | NULL | NULL
+-----------+---------+--------+-------------+----------+----------+---------+--------
----------+-----------+
user_id | user_name |
-----------+-----------
1 | me |
2 | someone |
1 | me
-----------+---------+--
我搞砸了我的表中的字段,comment_message 旁边的 user_id 应该是 comment_user_id 但我已经以这种方式创建了我的数据库。您能帮助实现这一目标吗?