【发布时间】:2020-10-27 01:49:12
【问题描述】:
我一直在手动尝试 Mongo 文档中的几种方法,但似乎无法解决我的问题。这是我的数据结构供参考
"loopback": [
{
"_date": "some date",
"dutTestParams": [],
"_id": "5f680665dfbfb74e78cae175",
"paramId": "dummyid",
"jtagApbStatus": "true",
"dutYaml": "dummy_yaml",
"dutSequenceId": "dummy_sequence",
"dutGitVersion": "1.0.1",
"guiVersion": "1.0",
"projectId": "alphacore",
"jobId": "id",
"pvt": "dummypvt",
"rate": 1,
"refclk": 1,
"channelLoss": 1,
"voltage1": 1,
"voltage2": 0.5,
"voltage3": 0.5,
"temp": 10,
"txwidth": 8,
"rxwidth": 8,
"name": "loopback",
"data": [
{
"onLane": [
1
],
"_id": "5f680675dfbfb74e78cae17c",
"chpid": "chip1",
"loopbackname": "BER",
"loopbackvalue": 0,
"laneid": 1,
"iteration": 1
},
{
"onLane": [
1
],
"_id": "5f680675dfbfb74e78cae17d",
"chipid": "chip2",
"loopbackname": "BER",
"loopbackvalue": 0,
"laneid": 1,
"iteration": 1
},{....}, ....., {....}]
基本上我有一个父文档。父标题文档中存储有测试数据。此数据与测试相关,因此不一定非要是 BER。它可以是其他测试点。此外,它包含了测试中测试的所有芯片。
我可以在查询后过滤数据,这很简单。但是,有什么方法可以进行特定查询吗?我理想中想要的是能够按照这些思路做一些事情:
db.testdata.find({jobid:"some id", data.0.chipid:"chip1"})
所以查询返回标题父文档和只有具有chipid == chip1 的子文档。当我尝试按照这些思路进行操作时,我得到了所有子文档,这不是我想要的。
非常感谢任何有经验的帮助!
【问题讨论】:
标签: javascript database mongodb express mongoose