Ich weiß, dass das, was Sie versuchen, mit MongoDB möglich ist. Das aggregate()
Der Befehl kann beliebig viele Argumente annehmen.
In der Mongo-Shell ein Befehl wie dieser
db.collection.aggregate(
{ $project: {
_id: 1,
items: 1
} },
{ $unwind: '$items' },
{ $unwind: '$items.images' }
);
wickelt die items
ab Unterdokument, dann die images
Unterdokument.
Basierend auf dem Code in Ihrer Frage funktioniert dies vielleicht
$project = array(
'$project' => array(
'_id' => 1,
'items' => 1,
)
);
$unwind_items = array(
'$unwind' => '$items'
);
$unwind_images = array(
'$unwind' => '$items.images'
);
$query = $mongo->store->aggregate($project,$unwind_items,$unwind_images);