下一节将解释Collection对象的各个函数。
在集合上执行的最常见操作是创建、读取、更新、删除(CRUD)操作。为了加快查找操作,建议适当使用索引.
的Collection.add ()
函数用于在数据库中存储文档。方法执行单个文档或文档列表execute ()
函数。
方法创建集合Schema.createCollection ()
函数在插入文档之前。方法将文档插入到现有集合中Schema.getCollection ()
函数。
的示例说明如何使用Collection.add ()
函数。该示例假设测试模式存在,并且集合my_collection
不存在。
#创建一个新的集合myColl = db.create_collection('my_collection')add({'name': 'Laurie', 'age': 19}).execute() #一次插入多个文档myColl. add({'name': 'Laurie', 'age': 19})。添加([{“名称”:“以”,“年龄”:54},{“名称”:“卢卡斯”,“年龄”:32}]). execute ()
有关更多信息,请参见CollectionAddFunction.
的find ()
函数用于在集合中搜索文档,相当于从数据库中检索记录。需要一个SearchConditionStr作为参数,以指定应从数据库返回的文档。如何形成一个SearchConditionStr
所需的表达式取决于被搜索的JSON文档的结构。要基于文档中嵌套的元素搜索集合,您需要想要搜索的元素的JSON路径。看到JSON路径语法参阅有关如何识别JSON文档中的特定元素的信息。例如,假设一个集合包含关于国家的文档,例如:
{国民生产总值:.6,独立年份:1967,名称:"西兰",代码:"SEA",人口统计:{预期寿命:79,人口:27},地理:{大陆:"欧洲",地区:"不列颠群岛",表面积:193},政府:{政府形式:"君主制",国家元首:"迈克尔·贝茨"}})
去寻找那些拥有大陆
值设置为欧洲
,到元素的路径腿为地理位置
.该分支可以包含多个元素,使用(*)
语法。把腿分开大陆
元素,使用句点(.)
的性格。因此,该发现可能包含一个documentPathLastItem以…形式表达:
“欧洲”.geography美元[*].Continent
对于MySQL JSON函数中使用的路径,作用域总是被搜索或操作的文档,由前导$字符表示。因此,主要的美元。
应该是可选的。根据您使用的语言,完整的查找函数可以是:
收集。find(':name in geography[*].Continent') .bind('name', 'Europe') .execute()
有几种方法,例如字段()
,sort ()
,跳过()
而且限制()
可以拴在find ()
函数进一步细化结果。有关更多信息,请参见第3.2节,“方法链接”.
的fetch ()
函数实际上触发了操作的执行。该示例假设测试模式存在,并且集合my_collection
的存在。
#使用集合'my_collection' myColl = db.get_collection('my_collection') #找到一个字段'name'以'L'开头的文档docs = myColl。找到(名称:param) .limit(1)。bind('param', 'L%').execute() print(docs.fetch_one()) #获取所有字段'name'以'L'开头的文档docs = myColl。find('name like:param').bind('param','L%').execute() myDoc = docs.fetch_one()而myDoc: print(myDoc) myDoc = docs.fetch_one()
有关更多信息,请参见CollectionFindFunction.