Допустим, у меня есть коллекция документов, которая выглядит следующим образом:
{
"tag": "single-value",
"flag": true
}
Может быть два документа, которые имеют одинаковые tag
, но разные flag
.пользовательский запрос для значения tag
Я хочу получить только tag
s, для которых существует только один документ (т.е. не два документа с двумя разными значениями flag
).По сути, я хочу отфильтровать дубликаты
То, что я пытаюсь достичь, эквивалентно следующему запросу SQL:
SELECT * FROM collection a WHERE a.tag LIKE '%some-value%' AND
(SELECT COUNT(*) FROM collection b WHERE b.tag = a.tag) = 1;
Я знаю, что группировка может легко это сделать, ноМой реальный сценарий немного сложнее, чем это, и группировка не решает его.
Спасибо!