我需要创建一个包含所有容器(存储在InfosContainers集合中)的列表,状态为“running”或“paused”但我不知道如何发出请求。
我试过这个:
containersRngPsd = InfosContainers.find({stateContainer: "running" || stateContainer: "paused"});
但我有一个错误:
imports/ui/chart.js:43:87: Unexpected token, expected , (43:87)
所以我的要求是假的。有人可以帮我提出要求吗?
答案 0 :(得分:1)
您需要使用Mongo的$or
语法:
InfosContainers.find( { $or: [ { stateContainer: "running" }, { stateContainer: "paused" } ] } )
答案 1 :(得分:1)
出于可读性和性能原因,您可以使用$in
代替$or
。
InfosContainers.find( { stateContainer: {$in: ["running", "paused" ] } )
在您的情况下可能无关紧要,但我想我想添加它,以防人们对更大的数据集执行查询。
当列未编入索引时,存在显着的性能差异。
MongoDB推荐使用超过$或。$的$。
https://docs.mongodb.com/manual/reference/operator/query/in/#op._S_in