我有这两个实体及其属性:
book - book_id、book_name、author_id、editor_id、subject_id、isbn
作者 - author_id、fn、ln
我必须查询具有最多行数的作者,这里是属性和实体:
| book_id | 书名 | 作者_id | editor_id | 伊斯本 | -------------------------------------------------- ------------ | 1 | Book1 标题 | 作者1 | 编辑1 | 8000-9000 | | 2 | Book2 标题 | 作者2 | 编辑1 | 8000-9001 | | 1 | Book1 标题 | 作者1 | 编辑1 | 8000-9002 | | 3 | Book2 标题 | 作者2 | 编辑1 | 8000-9003 |
| 作者_id | fn | ln | --------------------------------- | 1 | 名称1 | lname1 | | 2 | 名称2 | lname2 | | 3 | 名称3 | lname3 |
这是我的代码:
SELECT author.author_id, author.fn, author.ln, COUNT(DISTINCT book.editor_id) as num
FROM `editor`, `book`
GROUP BY `editor_id`
LIMIT 0,1
但偏偏我没有得到我想要的。输出必须是:
| 作者_id | fn | ln | --------------------------------- | 1 | 名称1 | lname1 |
因为“author_id = 1”在书籍上有 2 个条目。