我的数据库里有两张表。
第一个是author包含(int author_id, text name_of_author)
第二个是book包含(int book_id, int author_id, text name_of_book, text genre)
他们按作者的身份联系在一起;
我正在尝试获取一个查询,它将给我一个没有重复项的genre列表,以及在这个genre中编写的作者的数量。
应该是这样的:

    GENRE  NAME_OF_AUTHERS
     novel       12
     poems       4
     fantasy     20
     ...         ..
etc..

我试着这样做:
SELECT DISTINCT A.GENRE, COUNT(B.NAME_OF_AUTHOR) FROM BOOK AS A
LEFT JOIN AUTHOR AS B
ON A.AUTHOR_ID = B.AUTHOR.ID;

但它给了我错误的结果。

最佳答案

如果你只需要计算每种类型的作者数量,那么这个简单的查询不起作用吗?

mysql> select count(author_id), genre from boook group by genre;

关于mysql - MySQL计数没有重复,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22093822/

10-13 02:22