Puede utilizar la siguiente consulta con $elemMatch
para que coincida con los dos valores de la matriz.
Algo como
db.collection_name.aggregate({
"$match": {
"item": {
"$elemMatch": {
"property.0": "attr1",
"property.1": /^\+/
}
}
}
});
Además, puede usar $all
operador si no desea hacer referencia al índice de matriz.
db.collection_name.aggregate({
"$match": {
"item": {
"$elemMatch": {
"property": {
"$all": [
"attr1",
/^\+/
]
}
}
}
}
});