这是我的数据集。我花了很多时间在这个问题上,但不能得到我想要的实际结果。请帮我找到我的资料
您可以看到下面的JSON
我想提取包含特定学科名称的所有学科,如学科名称:“计算机科学”
然后我只想提取那些包含(学科名称:“计算机科学”)的词典
另外,请告诉我如何获取特定词典的单个数据
我用python做这个
我尝试了以下代码,但得到了实际的输出
import requests
import re
import json
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["FYP_DataBase"]
mycol = mydb["balochistan_uni"]
data = mydb.balochistan_uni.find({"disciplines.discipline_name":"Computer Science","disciplines.degree_Name":"BE"},{ '_id':0 ,"disciplines":1,"discipline.discipline_Name" :1, })
for d in data:
print(d)
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。你知道吗
{
"_id" : ObjectId("5b98e604c0c4d54a5016e646"),
"uni_name" : "Balochistan University Of Engineering & Technology BUET, Khuzdar",
"location" : "KHUZDAR P.O Box No. 89100 [BALOCHISTAN] ",
"web_link" : "http://www.buetk.edu.pk ",
"province" : "Balochistan",
"category" : "Public",
"disciplines" : [
{
"discipline_name" : "Civil",
"degree_Name" : "BE",
"duration" : "4 Years",
"Fee_per_Year" : "NA",
"admission_date" : "15-09-2018",
"Last_Merit" : "50"
},
{
"discipline_name" : "Computer Science",
"degree_Name" : "BS",
"duration" : "4 Years",
"Fee_per_Year" : "NA",
"admission_date" : "31-01-2018",
"Last_Merit" : "NA"
},
{
"discipline_name" : "Computer System",
"degree_Name" : "BE",
"duration" : "4 Years",
"Fee_per_Year" : "NA",
"admission_date" : "15-09-2018",
"Last_Merit" : "NA"
}
]
}
{
"_id" : ObjectId("5b98e60dc0c4d54a5016e648"),
"uni_name" : "Lasbela University Of Agriculture, Water And Marine Sciences, Uthal LUAWMS, Lasbela",
"location" : "Lasbela ",
"web_link" : "http://www.luawms.edu.pk ",
"province" : "Balochistan",
"category" : "Public",
"disciplines" : [
{
"discipline_name" : "Agriculture",
"degree_Name" : "BS",
"duration" : "4 Years",
"Fee_per_Year" : "15000",
"admission_date" : "14-09-2018",
"Last_Merit" : "NA"
},
{
"discipline_name" : "Business Administration",
"degree_Name" : "BBA",
"duration" : "4 Years",
"Fee_per_Year" : "15000",
"admission_date" : "14-09-2018",
"Last_Merit" : "NA"
},
{
"discipline_name" : "Computer Science",
"degree_Name" : "BS",
"duration" : "4 Years",
"Fee_per_Year" : "15000",
"admission_date" : "14-09-2018",
"Last_Merit" : "NA"
}
]
}
您的查询:
检索所有拥有“计算机科学”学科和“BE”学位的大学。您的查询没有指定它应该是具有“be”学位的学科“计算机科学”。你知道吗
如果要这样做,必须匹配数组
disciplines
中的元素。查询应如下所示:现在这个查询将只检索学科名称为“计算机科学”且“计算机科学”的学位名称为“BE”的大学。你知道吗
请查看MongoDB官方的documentation以获取数组查询运算符。
当MongoDB中的字段包含数组时,必须应用这些运算符。你知道吗
要仅筛选符合条件的规程,必须使用聚合框架。一种方法是:
将返回:
相关问题 更多 >
编程相关推荐