计算A类和类中的项目;B(MySQL)

计算A类和类中的项目;B(MySQL),mysql,sql,count,relational-division,Mysql,Sql,Count,Relational Division,我正试图改变一些东西,使之适合我。我认为我的问题对于懂SQL的人来说很容易回答。我有下表(两列): 现在,我想计算cat_id 3和5中的所有条目_id(它们必须同时属于这两个类别)。我该怎么做才能得到“2”(条目7和条目9的总和为2) 希望有人能帮忙。谢谢 这个问题有时被称为Relational Division SELECT COUNT(*) totalCOunt FROM ( SELECT entry_id FROM tableName WHERE

我正试图改变一些东西,使之适合我。我认为我的问题对于懂SQL的人来说很容易回答。我有下表(两列):

现在,我想计算cat_id 3和5中的所有条目_id(它们必须同时属于这两个类别)。我该怎么做才能得到“2”(条目7和条目9的总和为2)


希望有人能帮忙。谢谢

这个问题有时被称为
Relational Division

SELECT  COUNT(*) totalCOunt
FROM
(
    SELECT  entry_id 
    FROM    tableName
    WHERE   cat_id IN (3, 5)
    GROUP   BY entry_id
    HAVING  COUNT(DISTINCT cat_id ) = 2
) s
SELECT  COUNT(*) totalCOunt
FROM
(
    SELECT  entry_id 
    FROM    tableName
    WHERE   cat_id IN (3, 5)
    GROUP   BY entry_id
    HAVING  COUNT(DISTINCT cat_id ) = 2
) s