Sky*_*and 18 python mongodb pymongo
我有一些文件,如:
{
_id: 5,
vals: [100, 1100, 1500]
},
{
_id: 10,
vals: [1100, 1700]
}
Run Code Online (Sandbox Code Playgroud)
如何在vals字段中查询具有以下内容的文档:
我可以使用一些理解魔法:
g = lambda codes: (
d for d in collection.find() if any(code in d["vals"] for code in codes)
)
g([100, 1700]).next()
Run Code Online (Sandbox Code Playgroud)
或者,对于AND:
g = lambda codes: (
d for d in collection.find() if all(code in d["vals"] for code in codes)
)
g([100, 1100]).next()
Run Code Online (Sandbox Code Playgroud)
虽然如果有一些可以用驱动程序完成的魔法,这似乎有点笨拙.
loc*_*jay 50
yourmongocoll.find({"vals":1100})
yourmongocoll.find({"$or":[ {"vals":1700}, {"vals":100}]})
yourmongocoll.find({"$and":[ {"vals":100}, {"vals":1100}]})
Run Code Online (Sandbox Code Playgroud)
我建议阅读Mongodb Advanced查询
你也会发现$ in ...很有用
| 归档时间: |
|
| 查看次数: |
36008 次 |
| 最近记录: |