Ich habe ein funktionierendes Beispiel einer SQL-Abfrage:SQL Unterabfrage Aggregation Analogie
SELECT a.user_id, a.latitude, a.longitude, a.accuracy, a.heading, a.speed, a.created_at
FROM `location` a
INNER JOIN (
SELECT user_id, MAX(`created_at`) created_at
FROM location
WHERE created_at > :date
GROUP BY `user_id`
) b ON a.`user_id` = b.`user_id` AND a.`created_at` = b.`created_at`
, die für jeden Benutzer heutige letzte Position wählt
Wie kann ich diese Abfrage in MongoDB durchführen?
bekam ich den ersten Teil davon (subquery) in php:
$mongodb->getCollection('location')->aggregate([
['$match' => ['created_at' => ['$gte' => $beginOfDay]]],
[
'$group' => [
'_id' => '$user_id',
'lastTime' => ['$max' => '$created_at']
]
]
]);
und would't neue Abfragen erstellen möchten ...
Vielleicht in MongoDB ist es leichter als in einer relationalen getan DB?
Was ist das Sammlungsformat/die Form und die gewünschte Ausgabe? – felipsmartins