Skip to content

MongoDB 集合和索引

数据库

js
show dbs
use app_db
db

MongoDB 会在首次写入数据时创建数据库。

删除当前数据库:

js
db.dropDatabase()

集合

js
show collections
db.createCollection('users')
db.users.drop()

MongoDB 可以隐式创建集合:

js
db.users.insertOne({ name: 'Tom' })

文档结构

js
{
  _id: ObjectId('...'),
  name: 'Tom',
  email: 'tom@example.com',
  age: 18,
  roles: ['user'],
  profile: {
    city: 'Shanghai'
  },
  createdAt: ISODate('2026-01-01T00:00:00Z')
}

常见类型:

  • String
  • Number
  • Boolean
  • Date
  • ObjectId
  • Array
  • Object

索引

js
db.users.createIndex({ email: 1 }, { unique: true })
db.users.createIndex({ age: 1, createdAt: -1 })
db.users.getIndexes()
db.users.dropIndex('email_1')

排序规则:

  • 1:升序。
  • -1:降序。

执行计划

js
db.users.find({ email: 'tom@example.com' }).explain('executionStats')

重点关注是否走索引、扫描文档数量和返回文档数量。

基于 MIT 许可发布