出于某种原因,我使用MongoDB本机ObjectId作为我的应用程序的票证识别号码的主键.是否可以使用ObjectId部件搜索文档?
例如:我有文件:
[
{_id: ObjectId("577f8e6537e4a676203c056a")},
{_id: ObjectId("577f8ee437e4a676203c0577")},
{_id: ObjectId("577f8f3d717b6fdd22a1684c")}
]
Run Code Online (Sandbox Code Playgroud)
我想查询它_id包含"0577",以便它返回
{_id: ObjectId("577f8ee437e4a676203c0577")}
Run Code Online (Sandbox Code Playgroud)
我之前尝试过正则表达式.它回来了[]
db.transaction.find({_id: /0577/i}) ---> return 0
db.transaction.find({_id: {$regex: /0577/, $options: "i"}}) ---> return 0
Run Code Online (Sandbox Code Playgroud)
我想你可以$where像这样使用:
db.transaction.find({ $where: "this._id.str.match(/.*0577/)" })
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
405 次 |
| 最近记录: |