sql >> Base de Datos >  >> NoSQL >> MongoDB

Encontrar intersección entre dos colecciones en MongoDb

Copie ambas colecciones en una sola colección (incluya un campo discriminador si es necesario para que pueda saber qué tipo de documento tiene en cada caso).

Ejecute map-reduce en esa colección

En Mapa, emita la palabra como clave y un valor, diga {instance:1, dict:0} o {instance:0, dict:1} dependiendo de si el documento que se está mapeando es una instancia o una entrada de diccionario. (Puede agregar más campos aquí en los valores según sea necesario).

En Reducir, acumula las puntuaciones (como de costumbre).

Ahora haz una consulta buscando instance > 0 y dict > 0 y tienes todas las palabras que están en ambos.