什么是以下两种方式的区别:
db.getCollection('booking').find()
并且
db.booking.find()
它们完全相同吗?何时应该使用哪个?
db.getCollection('booking').find({_id:"0J0DR"})
db.booking.find({_id:"0J0DR"})
什么是以下两种方式的区别:
db.getCollection('booking').find()
并且
db.booking.find()
db.getCollection('booking').find({_id:"0J0DR"})
db.booking.find({_id:"0J0DR"})
是的,它们完全相同,您可以使用任意一个。
第一种形式db.getCollection(collectionName).find()
在集合名称包含特殊字符会使另一种语法无效时变得方便。
例如:
假设您的集合名称以_
开头、匹配数据库shell方法或包含空格,则可以使用db.getCollection("booking trips").find()
或db["booking trips"].find()
,而db.booking trips.find()
无法实现。
users
集合中的第一个用户时非常有用。db.collection('users').findOneAndUpdate(...) // Won't throw even if the collection doesn't exist yet