0
我有兩個表 - forum_topics
和topics_posts
。我想從forum_topics
中選擇topics_posts
表中沒有帖子的行,但無法弄清楚如何操作。請問一個SQL語句像這樣存在:MySQL選擇行不在另一個表中的行
select from * `forum_topics` where have no rows in `topics_posts`
我有兩個表 - forum_topics
和topics_posts
。我想從forum_topics
中選擇topics_posts
表中沒有帖子的行,但無法弄清楚如何操作。請問一個SQL語句像這樣存在:MySQL選擇行不在另一個表中的行
select from * `forum_topics` where have no rows in `topics_posts`
我想你想這樣的事情:
select * from forum_topics t
where not exists (
select * from topics_posts p
where p.topic_id = t.id
);
雖然使用外連接時,可能會有點比子查詢更快:
select * from forum_topics t left outer join forum_posts p
on t.id = p.topic_id
where p.id is null;
非常感謝你的工作好(外連接) – 2010-03-17 10:02:11