Как использовать $ setIntersection с не массивом типа данных в MongoDB - PullRequest
0 голосов
/ 16 марта 2019

Я пытаюсь использовать $ setIntersection для сравнения строкового типа данных (heroName) и 2 массивов (heroOptions и heroChoosen), чтобы получить _id объекта с одинаковыми значениями этих трех полей.Я не хочу использовать оператор $ expr, а только $ setIntersection.Проблема, с которой я сталкиваюсь, состоит в том, что $ setIntersection сравнивает только массивы, а игра представляет собой строковый тип данных.

Document 1:
_id:ObjectId("111111111111111111112")
heroName:"Batman"
heroOptions:"Batman"
            "Superman"
            "Robin"
heroChoosen:"Batman"
            "The Flash"

Документ 1 содержит аналогичное значение (Бэтмен) в heroName, heroOptions и heroChoosen, поэтому в документе 1 будет отображаться _id.

...