El operador MongoDB más cercano a lo que está buscando es un $or
, pero eso no es lo mismo que SQL UNION que combina dos consultas separadas en un solo resultado. Las consultas de MongoDB siempre son contra una sola colección, pero $or
le permite tener múltiples cláusulas de consulta.
Por ejemplo:
db.collection.find(
// Find documents matching any of these values
{$or:[
{var1: 123},
{var2: 456},
{var3: 789}
]}
).sort(
// Sort in ascending order
{var1:1, var2:1, var3:1}
)
Dado que está limitado a consultar una sola colección, los resultados ya se eliminarán de los duplicados en el nivel del documento y todos los resultados compartirán el mismo orden de clasificación si se especifica uno.
Si desea simular una UNION (u otra operación que trabaje con varias colecciones/consultas) en MongoDB, deberá escribir varias consultas y fusionar los conjuntos de resultados en el código de su aplicación.