sql >> Database >  >> NoSQL >> MongoDB

Match met subtekenreeks in mongodb-aggregatie

Ik denk dat je een query probeert te maken met behulp van een aggregatieraamwerk, omdat je de operators $match &$substr hebt geprobeerd. Ik heb een eenvoudig voorbeeld gemaakt om te laten zien hoe u $substr kunt gebruiken om het gewenste resultaat te bereiken in het aggregatieframework.

Ik heb de volgende gegevens in de MongoDB ingevoegd.

{ "_id" : ObjectId("528b343881d4fe2cfe0b1b25"), "time_stamp" : "2013-06-30 23:58:37 928" }
{ "_id" : ObjectId("528b343b81d4fe2cfe0b1b26"), "time_stamp" : "2013-06-30 23:58:37 928" }
{ "_id" : ObjectId("528b344c81d4fe2cfe0b1b27"), "time_stamp" : "2013-06-30 12:58:37 928" }
{ "_id" : ObjectId("528b344f81d4fe2cfe0b1b28"), "time_stamp" : "2013-06-30 12:58:23 928" }
{ "_id" : ObjectId("528b345381d4fe2cfe0b1b29"), "time_stamp" : "2013-06-31 12:58:23 928" }
{ "_id" : ObjectId("528b345981d4fe2cfe0b1b2a"), "time_stamp" : "2013-07-31 12:58:23 933" }

Ik heb de volgende code geschreven om op datum te groeperen met de operator $substr.

db.myObject.aggregate(
{$project : {new_time_stamp : {$substr : ["$time_stamp",0, 10]}}},
{$group:{_id:"$new_time_stamp", "count": {$sum:1}}}
);


  1. MongoDB automatiseren en beheren met ClusterControl

  2. Geneste arrays bijwerken in mongodb

  3. MongoDB Back-up en herstel met MongoDump

  4. redis lua-script versus enkele oproepen