MongoDB db.getCollection.find和db.tablename.find之间的区别?

tor*_*ard 3 mongodb mongodb-query

有什么区别:

db.getCollection('booking').find()
Run Code Online (Sandbox Code Playgroud)

db.booking.find()
Run Code Online (Sandbox Code Playgroud)

它们是完全相同的,还是应该何时使用哪一个?

db.getCollection('booking').find({_id:"0J0DR"})

db.booking.find({_id:"0J0DR"})
Run Code Online (Sandbox Code Playgroud)

chr*_*dam 7

是的,它们完全相同,你也可以使用它们.

db.getCollection(collectionName).find()当您的集合名称包含特殊字符时,第一个表单会变得很方便,否则会使其他语法变得多余.

例如: 假设您的收藏有打头的名称_或匹配的数据库壳方式或有空间,那么你可以使用db.getCollection("booking trips").find()db["booking trips"].find()在那里做db.booking trips.find()是不可能的.