[英]MySQL find authors without posts (one-to-many relationship)
我有一個MySQL問題:
我有一對多關系的兩個表格(帖子和作者)(因為每個帖子都是由一位作者撰寫的,並且一位作者可以寫多個帖子)。
所以這是表格:
作者:id:BIGINT,名稱:VARCHAR(255)帖子:id:BIGINT,author_id:BIGINT,正文:TEXT。
如何檢索所有沒有帖子的作者?
我一直在嘗試做的是:
SELECT *
FROM Authors
WHERE id NOT IN (SELECT author_id
FROM Posts
GROUP BY author_id);
但這需要很長時間!!!
在兩個表中,有300,000位作者和1,000,000個帖子!
有什么更快的方法嗎?
多謝你們!
SELECT *
FROM Authors
LEFT JOIN Posts ON (Authors.id = Posts.author_id)
WHERE Posts.author_id IS NULL
歸功於@john作為第一個正確答案:)
也許這個嗎?
SELECT * FROM Authors a
WHERE NOT EXISTS (SELECT *
FROM Posts p
WHERE p.author_id=a.id)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.