SQL-запрос на mongodb, чтобы получить количество нескольких столбцов против значения идентификатора одного столбца - PullRequest
0 голосов
/ 21 декабря 2018

Я новичок в mongodb.Я застрял в проблеме.

Я хочу получить количество столбцов в сравнении со значением одного столбца, содержащего идентификатор.

Предположим, у меня есть разные столбцы (author1, author2, author3, ... и т. Д.) Для конкретного id.

Теперь я хочу получить общее количество авторов для этого конкретного id.

Поэтому я хочу подсчитать общее количество столбцов авторов по этому идентификатору, чтобы получить счет.

Это хороший подход?

1 Ответ

0 голосов
/ 21 декабря 2018

Одним из решений было бы использование агрегированного запроса с условной суммой, например:

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

В итоге, вам было бы лучше использовать один столбец для хранения авторов, чтобы вы могли запрашивать только этот столбецвместо того, чтобы смотреть на несколько из них.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...