对不起,我说一点英语。我希望列出主题,如果超过0个帖子。
CREATE TABLE topics ( id );
CREATE TABLE posts ( id, topic_id ); -- posts(topic_id)=topics(id)
没关系:
SELECT * FROM topics;
我想只有主题如果计数帖子> 0:
SELECT * FROM topics WHERE posts > 0;
感谢。
答案 0 :(得分:0)
尝试类似:
SELECT *
FROM topics t INNER JOIN posts p
ON t.id = p.topic_id
答案 1 :(得分:0)
你不需要计算任何东西。 posts
表中的任何主题必须至少有一个帖子。所以只需从那里获取所有主题ID:
SELECT DISTINCT topic_id
FROM posts
答案 2 :(得分:0)
只需加入posts
表即可。默认inner join
仅返回可以建立posts
表的链接的行,换句话说,至少有一个帖子的主题。
select t.*
from topics
join posts p on t.id = p.topic_id