我试图找一个基于我的课程json对象的课程。如果我只有课程编号12712和讲座: A,那么我如何在json对象(课程对象中的第一个对象)中找到这门课程,其中很多课程都是这样的?我的尝试是
db.courses.find({"courses.12712"})
但我搞错了
JSON对象的片段: { "_id“:ObjectId(”566f824641b9b2b94a9ff4“),”课程“:{ "12712”:{“系”:“土木工程和环境工程”,“讲座”:[{“教员”:“范布里森”,“章节”:,“讲座”:"A",“会议”:{“房间”:"DH 2302",“地点”:“匹兹堡,宾夕法尼亚”,“结束”:“04:20 an”、“天”:"MW“、”开始“:"03:00PM”} ]、“名称”:“可持续工程导论”、“单元”:12、"prereqs“:”、“学期”:"F“、"coreqs”:"“、"desc”:“本课程以概述.}”开始。
发布于 2015-12-15 03:45:28
MongoDB有query operators
,您可以使用$eq
运算符来匹配您想要的字段(在您的情况下,它是一个数字)。查看他们的官方文档这里。
语法:
{ <field>: { $eq: <value> } }
在您的情况下,您可能可以尝试:
db.courses.find({ <property you want to match>: { $eq: "12712" } });
发布于 2015-12-15 06:00:46
使用$exists运算符确定文档中的特定字段。
db.courses.find({"courses.12712" : { $exists:true }})
如果你想检查讲课是否至少有一个元素的话
db.courses.find({"courses.12712" : { $exists:true },"courses.12712.lectures.0" : { $exists:true } })
https://stackoverflow.com/questions/34280510
复制相似问题