mongodb上的sql查询以针对单列的id值获取多列的计数

时间:2018-12-21 08:25:23

标签: sql mongodb mysqli

我是mongodb的新手。我陷入了一个问题。

我想针对包含ID的单个列的值获取多个列的计数。

假设针对特定的author1,我有不同的列(author2author3id,...等等)。

现在,我想获取该特定id的作者总数。

因此,我想针对该ID计算作者的总列数,以获取计数。

这是一个好方法吗?

1 个答案:

答案 0 :(得分:0)

一种解决方案是使用带有条件总和的聚合查询,例如:

SELECT SUM(
    CASE
        WHEN (author1 = 'id' OR author2 = 'id' OR author3 = 'id' --more columns...)  
        THEN 1 
        ELSE 0
    END
)
FROM table

最重要的是,最好使用单个列来存储作者,因此您可以只查询该列,而不用查看其中的几个。