MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Mongodb erstellt einen Alias ​​in einer Abfrage

Es ist möglich, mit $project:

ein neues Feld mit einem bestimmten Namen und Wert aus einem anderen Feld zu erstellen
{
  "_id" : 1,
  title: "abc123",
  isbn: "0001122223334",
  author: { last: "zzz", first: "aaa" },
  copies: 5
}

Die folgende $project-Stufe fügt die neuen Felder isbn, lastName und copysSold:

hinzu
db.books.aggregate(
   [
      {
         $project: {
            title: 1,
            isbn: {
               prefix: { $substr: [ "$isbn", 0, 3 ] },
               group: { $substr: [ "$isbn", 3, 2 ] },
               publisher: { $substr: [ "$isbn", 5, 4 ] },
               title: { $substr: [ "$isbn", 9, 3 ] },
               checkDigit: { $substr: [ "$isbn", 12, 1] }
            },
            lastName: "$author.last",
            copiesSold: "$copies"
         }
      }
   ]
)

http://docs.mongodb.org/manual/ Referenz/Betreiber/Aggregation/Projekt/#Pipe._S_Projekt