mongodb基本操作

作者: 雪域迷影 | 来源:发表于2021-09-05 12:34 被阅读0次

    本文转载自mongodb_cheat_sheet

    MongoDB Cheat Sheet

    Show All Databases

    show dbs
    

    Show Current Database

    db
    

    Create Or Switch Database

    use acme
    

    Drop

    db.dropDatabase()
    

    Create Collection

    db.createCollection('posts')
    

    Show Collections

    show collections
    

    Insert Row

    db.posts.insert({
      title: 'Post One',
      body: 'Body of post one',
      category: 'News',
      tags: ['news', 'events'],
      user: {
        name: 'John Doe',
        status: 'author'
      },
      date: Date()
    })
    

    Insert Multiple Rows

    db.posts.insertMany([
      {
        title: 'Post Two',
        body: 'Body of post two',
        category: 'Technology',
        date: Date()
      },
      {
        title: 'Post Three',
        body: 'Body of post three',
        category: 'News',
        date: Date()
      },
      {
        title: 'Post Four',
        body: 'Body of post three',
        category: 'Entertainment',
        date: Date()
      }
    ])
    

    Get All Rows

    db.posts.find()
    

    Get All Rows Formatted

    db.posts.find().pretty()
    

    Find Rows

    db.posts.find({ category: 'News' })
    

    Sort Rows

    # asc
    db.posts.find().sort({ title: 1 }).pretty()
    # desc
    db.posts.find().sort({ title: -1 }).pretty()
    

    Count Rows

    db.posts.find().count()
    db.posts.find({ category: 'news' }).count()
    

    Limit Rows

    db.posts.find().limit(2).pretty()
    

    Chaining

    db.posts.find().limit(2).sort({ title: 1 }).pretty()
    

    Foreach

    db.posts.find().forEach(function(doc) {
      print("Blog Post: " + doc.title)
    })
    

    Find One Row

    db.posts.findOne({ category: 'News' })
    

    Find Specific Fields

    db.posts.find({ title: 'Post One' }, {
      title: 1,
      author: 1
    })
    

    Update Row

    db.posts.update({ title: 'Post Two' },
    {
      title: 'Post Two',
      body: 'New body for post 2',
      date: Date()
    },
    {
      upsert: true
    })
    

    Update Specific Field

    db.posts.update({ title: 'Post Two' },
    {
      $set: {
        body: 'Body for post 2',
        category: 'Technology'
      }
    })
    

    Increment Field ($inc)

    db.posts.update({ title: 'Post Two' },
    {
      $inc: {
        likes: 5
      }
    })
    

    Rename Field

    db.posts.update({ title: 'Post Two' },
    {
      $rename: {
        likes: 'views'
      }
    })
    

    Delete Row

    db.posts.remove({ title: 'Post Four' })
    

    Sub-Documents

    db.posts.update({ title: 'Post One' },
    {
      $set: {
        comments: [
          {
            body: 'Comment One',
            user: 'Mary Williams',
            date: Date()
          },
          {
            body: 'Comment Two',
            user: 'Harry White',
            date: Date()
          }
        ]
      }
    })
    

    Find By Element in Array ($elemMatch)

    db.posts.find({
      comments: {
         $elemMatch: {
           user: 'Mary Williams'
           }
        }
      }
    )
    

    Add Index

    db.posts.createIndex({ title: 'text' })
    

    Text Search

    db.posts.find({
      $text: {
        $search: "\"Post O\""
        }
    })
    

    Greater & Less Than

    db.posts.find({ views: { $gt: 2 } })
    db.posts.find({ views: { $gte: 7 } })
    db.posts.find({ views: { $lt: 7 } })
    db.posts.find({ views: { $lte: 7 } })
    

    相关文章

      网友评论

        本文标题:mongodb基本操作

        本文链接:https://www.haomeiwen.com/subject/rrsjwltx.html