MongoDB Exercise - Найти рестораны, которые не готовят ни одной американской кухни и достигли отметки А, не относящейся к району Бруклин
Напишите запрос MongoDB, чтобы найти рестораны, которые не готовят ни одной «американской» кухни и получили оценку «А», не принадлежащую району Бруклин.
Документ должен отображаться в соответствии с кухней в порядке убывания.
Структура коллекции ресторанов
{ "адрес": { «здание»: «1007», «координата»: [-73,856077, 40,848447], "улица": "Моррис Парк Авеню", почтовый индекс: 10462 }, "Боро": "Бронкс", "кухня": "пекарня", "оценки": [ {"date": {"$ date": 1393804800000}, "оценка": "A", "оценка": 2}, {"date": {"$ date": 1378857600000}, "оценка": "A", "оценка": 6}, {"date": {"$ date": 1358985600000}, "оценка": "A", "оценка": 10}, {"date": {"$ date": 1322006400000}, "оценка": "A", "оценка": 9}, {"date": {"$ date": 1299715200000}, "оценка": "B", "оценка": 14} ], "name": "Morris Park Bake Shop", "restaurant_id": "30075445" }
Запрос:
db.restaurants.find( {
"cuisine" : {$ne : "American "},
"grades.grade" :"A",
"borough": {$ne : "Brooklyn"}
}
).sort({"cuisine":-1});
Выход:
{"_id": ObjectId ("564c2d949eb21ad392f17cd5"), "address": {"building": "89", "ord": [-73.9995899, 40.7168015], "street": "Baxter Street", "zipcode": " 10013 "}," городской округ ":" Манхэттен "," кухня ":" вьетнамский / камбоджийский / малайзийский "," классы ": [{" date ": ISODate (" 2014-08-21T00: 00: 00Z ")," оценка ":" А "," оценка ": 13}, {" дата ": ISODate (" 2013-08-31T00: 00: 00Z ")," оценка ":" А "," оценка ": 13}, { «дата»: ISODate («2013-04-11T00: 00: 00Z»), «оценка»: «C», «оценка»: 3}, {«дата»: ISODate («20 12-10-17T00: 00: 00Z ")," оценка ":" A "," оценка ": 4}, {" дата ": ISODate (" 2012-05-15T00: 00: 00Z ")," оценка " : "A", "score": 10}], "name": "Thai Son", "restaurant_id": "40559606"} {"_id": ObjectId ("564c2d949eb21ad392f17d8e"), "address": {"building": "8278", "corre": [-73.88143509999999, 40.7412552], "street": "Broadway", "zipcode": "11373 "}," городской округ ":" Королевы "," кухня ":" Вьетнамский / Камбоджийский / Малайзия "," классы ": [{" дата ": ISODate (" 2014-06-12T00: 00: 00Z ")," класс " ":" B "," оценка ": 21}, {" дата ": ISODate (" 2013-05-20T00: 00: 00Z ")," оценка ":" A "," оценка ": 13}, {" дата ": ISODate (" 2012-12-26T00: 00: 00Z ")," оценка ":" A "," оценка ": 10}, {" дата ": ISODate (" 2012-12-03T00: 00: 00Z ")," оценка ":" P "," оценка ": 5}, {" дата ": ISODate (" 2012-05-04T00: 00: 00Z ")," оценка " : "B", "score": 27}], "name": "Pho Bac Вьетнамская кухня из морепродуктов", "restaurant_id": "40578058"} {"_id": ObjectId ("564c2d949eb21ad392f18177"), "address": {"building": "148", "corre": [-74.000254, 40.7172727], "street": "Center Street", "zipcode": " 10013 "}," городской округ ":" Манхэттен "," кухня ":" вьетнамский / камбоджийский / малайзийский "," классы ": [{" date ": ISODate (" 2014-10-01T00: 00: 00Z ")," оценка ":" A "," оценка ": 7}, {" дата ": ISODate (" 2014-05-19T00: 00: 00Z ")," оценка ":" C "," оценка ": 5}, { «дата»: ISODate («2013-11-15T00: 00: 00Z»), «оценка»: «B», «оценка»: 14}, {«дата»: ISODate («201 3-03-08T00: 00: 00Z ")," оценка ":" B "," оценка ": 25}, {" дата ": ISODate (" 2012-05-22T00: 00: 00Z ")," оценка " : "B", "оценка": 23}, {"дата": ISODate ("2011-10-27T00: 00: 00Z"), "оценка": "A", "оценка": 9}], "имя ":" Ресторан Nha-Trang Center Vietnam "," restaurant_id ":" 40751226 "} {"_id": ObjectId ("564c2d949eb21ad392f1848d"), "address": {"building": "158", "ordin ": [-74.0025903, 40.7443077]," улица ":" 9 Avenue "," почтовый индекс ":" 10011 "}," городской округ ":" Манхэттен "," кухня ":" вьетнамский / камбоджийский / малайзийский "," классы ": [{" date ": ISODate (" 2014-07-15T00: 00: 00Z ")," оценка ":" А "," оценка ": 11}, {" дата ": ISODate (" 2014-01-14T00: 00: 00Z ")," оценка ":" А "," оценка ": 9}, { "дата": ISODate ("2013-04-16T00: 00: 00Z"), "оценка": "B", "оценка": 18}, {"дата": ISODate ("2012-0 2-15T00: 00: 00Z ")," оценка ":" A "," оценка ": 7}]," name ":" O-Mai "," restaurant_id ":" 40903063 "} {"_id": ObjectId ("564c2d949eb21ad392f1871f"), "address": {"building": "87", "ord": [-73.99961909999999, 40.7167408], "street": "Baxter Street", "почтовый индекс": " 10013 "}," городской округ ":" Манхэттен "," кухня ":" вьетнамский / камбоджийский / малайзийский "," классы ": [{" date ": ISODate (" 2015-01-06T00: 00: 00Z ")," оценка ":" А "," оценка ": 11}, {" дата ": ISODate (" 2014-01-23T00: 00: 00Z ")," оценка ":" А "," оценка ": 10}, { «дата»: ISODate («2013-01-08T00: 00: 00Z»), «оценка»: «A», «оценка»: 13}, {«дата»: ISO Дата ("2012-06-05T00: 00: 00Z"), "оценка": "A", "оценка": 10}], "name": "Ресторан Nha Trang", "restaurant_id": "40989220"} {"_id": ObjectId ("564c2d949eb21ad392f187c5"), "address": {"building": "80", "ord": [-73.99862900000001, 40.7158191], "street": "Bayard Street", "zipcode": " 10013 "}," городской округ ":" Манхэттен "," кухня ":" вьетнамский / камбоджийский / малайзийский "," классы ": [{" date ": ISODate (" 2014-11-07T00: 00: 00Z ")," оценка ":" B "," оценка ": 27}, {" дата ": ISODate (" 2014-07-05T00: 00: 00Z ")," оценка ":" B "," оценка ": 27}, { «дата»: ISODate («2013-10-29T00: 00: 00Z»), «оценка»: «A», «оценка»: 2}, {«дата»: ISOD ate ("2013-06-28T00: 00: 00Z"), "оценка": "C", "оценка": 5}, {"date": ISODate ("2013-01-22T00: 00: 00Z"), "оценка": "B", "оценка": 14}, {"дата": ISODate ("2012-07-18T00: 00: 00Z"), "оценка": "C", "оценка": 42}, {"date": ISODate ("2012-02-10T00: 00: 00Z"), "grade": "A", "Score": 13}], "name": "New Bo Ky Restaurant", "restaurant_id" : "41005330"} {"_id": ObjectId ("564c2d949eb21ad392f1888b"), "address": {"building": "156-32", "ordin ": [-73.8087286, 40.7639199]," улица ":" Северный бульвар "," почтовый индекс " : "11354"}, "городской округ": "королевы", "кухня": "вьетнамский / камбоджийский / малайзийский", "классы": [{"date": ISODate ("2014-09-11T00: 00: 00Z") , "оценка": "А", "оценка": 13}, {"дата": ISODate ("2014-04-08T00: 00: 00Z"), "оценка": "А", "оценка": 11} , {"дата": ISODate ("2013-10-07T00: 00: 00Z"), "оценка": "A", "оценка": 12}, {"дата": ISOD ate ("2012-09-13T00: 00: 00Z"), "оценка": "A", "оценка": 2}, {"date": ISODate ("2012-04-26T00: 00: 00Z"), "оценка": "А", "оценка": 7}, {"дата": ISODate ("2011-11-09T00: 00: 00Z"), "оценка": "А", "оценка": 10}] , "name": "Тайский и вьетнамский рестораны Меконга", "restaurant_id": "41022628"} {"_id": ObjectId ("564c2d949eb21ad392f188a9"), "address": {"building": "2", "ord": [-73.9862038, 40.747189], "street": "West 32 Street", "почтовый индекс": "10001"}, "местный": "Манхэттен", "кухня": "вьетнамский / камбоджийский / малайзийский", "классы": [{"date": ISODate ("2014-12-01T00: 00: 00Z"), "оценка": "Z", "оценка": 18}, {"дата": ISODate ("2014-05-27T00: 00: 00Z"), "оценка": "А", "оценка": 12}, {"дата": ISODate ("2013-10-01T00: 00: 00Z"), "оценка": "B", "оценка": 17}, {"дата": ISODate (" 2012-09-21T00: 00: 00Z ")," оценка ":" A "," оценка ": 7}, {" дата ": ISODate (" 2012-03-05T00: 00: 00Z ")," оценка " : "A", "score": 13}], "name": "Pho 32 & Shabu", "restaurant_id": "41026002"} {"_id": ObjectId ("564c2d949eb21ad392f189d1"), "address": {"building": "345", "corre": [-74.0102595, 40.7184972], "street": "Гринвич-стрит", "zipcode": " 10013 "}," городской округ ":" Манхэттен "," кухня ":" вьетнамский / камбоджийский / малайзийский "," классы ": [{" date ": ISODate (" 2014-08-22T00: 00: 00Z ")," оценка ":" A "," оценка ": 9}, {" дата ": ISODate (" 2014-03-15T00: 00: 00Z ")," оценка ":" B "," оценка ": 18}, { «дата»: ISODate («2012-10-17T00: 00: 00Z»), «оценка»: «A», «оценка»: 10}, {«дата»: ISODate ("2012-05-08T00: 00: 00Z"), "оценка": "B", "оценка": 19}, {"дата": ISODate ("2011-12-16T00: 00: 00Z"), " оценка: "A", "оценка": 12}], "имя": "Viet Cafe", "restaurant_id": "41063946"} {"_id": ObjectId ("564c2d949eb21ad392f18cc5"), "address": {"building": "4107", "corre": [-73.8293161, 40.7583823], "street": "бульвар Киссены", "почтовый индекс": " 11355 "}," городской округ ":" королевы "," кухня ":" вьетнамский / камбоджийский / малайзийский "," классы ": [{" date ": ISODate (" 2014-11-13T00: 00: 00Z ")," оценка ":" А "," оценка ": 10}, {" дата ": ISODate (" 2014-05-20T00: 00: 00Z ")," оценка ":" А "," оценка ": 8}, { «дата»: ISODate («2013-10-16T00: 00: 00Z»), «оценка»: «B», «оценка»: 22}, {«дата»: ISODate ( "2013-03-20T00: 00: 00Z"), "оценка": "B", "оценка": 18}, {"дата": ISODate ("2012-08-01T00: 00: 00Z"), "оценка ":" B "," оценка ": 16}, {" дата ": ISODate (" 2011-12-14T00: 00: 00Z ")," оценка ":" B "," оценка ": 17}]," name ":" Pho Bang Restaurant "," restaurant_id ":" 41145163 "} {"_id": ObjectId ("564c2d949eb21ad392f18ead"), "address": {"building": "342", "corre": [-73.986646, 40.7264594], "street": "East 6 Street", "zipcode": "10003"}, "городской округ": "Манхэттен", "кухня": "вьетнамский / камбоджийский / Малайзия", "классы": [{"date": ISODate ("2014-12-04T00: 00: 00Z"), "оценка": "А", "оценка": 11}, {"дата": ISODate ("2014-06-27T00: 00: 00Z"), "оценка": "А", "оценка": 8}, {"дата": ISODate ("2013-07-30T00: 00: 00Z"), "оценка": "A", "оценка": 13}, {"дата": ISODate ("20 12-05-31T00: 00: 00Z ")," оценка ":" A "," оценка ": 10}]," name ":" Lan Cafe "," restaurant_id ":" 41184550 "} {"_id": ObjectId ("564c2d949eb21ad392f18f5e"), "address": {"building": "18", "ord": [-74.0034562, 40.7275645], "street": "King Street", "zipcode": " 10014 "}," городской округ ":" Манхэттен "," кухня ":" вьетнамский / камбоджийский / малайзийский "," классы ": [{" date ": ISODate (" 2014-02-18T00: 00: 00Z ")," оценка ":" А "," оценка ": 12}, {" дата ": ISODate (" 2013-08-20T00: 00: 00Z ")," оценка ":" А "," оценка ": 10}, { «дата»: ISODate («2013-03-05T00: 00: 00Z»), «оценка»: «C», «оценка»: 45}, {«дата»: ISODate («201 2-04-06T00: 00: 00Z ")," оценка ":" B "," оценка ": 19}, {" дата ": ISODate (" 2011-09-22T00: 00: 00Z ")," оценка " : "A", "score": 9}], "name": "Новый ресторан Меконг", "restaurant_id": "41202673"} {"_id": ObjectId ("564c2d949eb21ad392f19025"), "address": {"building": "4010", "corre": [-73.8915947, 40.746408], "street": "74 Street", "zipcode": " 11373 "}," городской округ ":" королевы "," кухня ":" вьетнамский / камбоджийский / малайзийский "," классы ": [{" date ": ISODate (" 2014-08-12T00: 00: 00Z ")," оценка ":" A "," оценка ": 7}, {" дата ": ISODate (" 2014-01-09T00: 00: 00Z ")," оценка ":" B "," оценка ": 25}, { «дата»: ISODate («2013-06-25T00: 00: 00Z»), «оценка»: «A», «оценка»: 13}, {«дата»: ISODate («2012-05- 07T00: 00: 00Z ")," оценка ":" A "," оценка ": 12}, {" дата ": ISODate (" 2011-12-28T00: 00: 00Z ")," оценка ":" A " , "score": 12}], "name": "Thai Son", "restaurant_id": "41221266"} {"_id": ObjectId ("564c2d949eb21ad392f19232"), "address": {"building": "369", "corre": [-73.9959432, 40.7200254], "street": "Broome Street", "zipcode": " 10013 "}," городской округ ":" Манхэттен "," кухня ":" вьетнамский / камбоджийский / малайзийский "," классы ": [{" date ": ISODate (" 2014-08-01T00: 00: 00Z ")," оценка ":" А "," оценка ": 9}, {" дата ": ISODate (" 2014-02-11T00: 00: 00Z ")," оценка ":" А "," оценка ": 13}, { «дата»: ISODate («2013-01-24T00: 00: 00Z»), «оценка»: «A», «оценка»: 12}, {«дата»: ISODate («2 012-06-22T00: 00: 00Z ")," оценка ":" A "," оценка ": 5}, {" дата ": ISODate (" 2012-01-18T00: 00: 00Z ")," оценка " : "A", "score": 2}], "name": "Saigon Vietnamese Sandwich", "restaurant_id": "41254832"} {"_id": ObjectId ("564c2d949eb21ad392f1973f"), "address": {"building": "82-90", "corre": [-73.8848687, 40.743896], "street": "Broadway", "zipcode": "11373"}, "городской округ": "королевы", "кухня": "вьетнамский / камбоджийский / малайзийский", "классы": [{"date": ISODate ("2014-07-02T00: 00: 00Z"), "оценка": "B", "оценка": 26}, {"дата": ISODate ("2013-10-23T00: 00: 00Z"), "оценка": "B", "оценка": 18}, {"дата": ISODate ("2013-05-30T00: 00: 00Z"), "оценка": "B", "оценка": 22}, {"дата": ISODate ("2012-12 -18T00: 00: 00Z ")," оценка ":" A "," оценка ": 7}, {" дата ": ISODate (" 2012-09-04T00: 00: 00Z ")," оценка ":" C "," оценка ": 10}, {" дата ": ISODate (" 2012-02-24T00: 00: 00Z ")," оценка ":" B "," оценка ": 17}]," имя ":" Ресторан Pho Bang "," restaurant_id ":" 41338955 "} {"_id": ObjectId ("564c2d949eb21ad392f19966"), "address": {"building": "102", "corre": [-73.99543899999999, 40.717846], "street": "Bowery", "zipcode": "10013 "}," городской округ ":" Манхэттен "," кухня ":" вьетнамский / камбоджийский / малайзийский "," классы ": [{" дата ": ISODate (" 2014-12-20T00: 00: 00Z ")," класс " ":" A "," оценка ": 13}, {" дата ": ISODate (" 2014-07-08T00: 00: 00Z ")," оценка ":" A "," оценка ": 11}, {" дата ": ISODate (" 2013-11-25T00: 00: 00Z ")," оценка ":" A "," оценка ": 6}, {" дата ": ISODate (" 20 13-04-04T00: 00: 00Z ")," оценка ":" B "," оценка ": 15}, {" дата ": ISODate (" 2012-08-21T00: 00: 00Z ")," оценка " : «A», «оценка»: 13}, {«дата»: ISODate («2012-03-22T00: 00: 00Z»), «оценка»: «A», «оценка»: 13}], «имя ":" Ресторан New Tu Do "," restaurant_id ":" 41374711 "} {"_id": ObjectId ("564c2d949eb21ad392f1996f"), "address": {"building": "277", "corre": [-73.9927639, 40.717627], "street": "Grand Street", "zipcode": " 10002 "}," городской округ ":" Манхэттен "," кухня ":" вьетнамский / камбоджийский / малайзийский "," классы ": [{" date ": ISODate (" 2014-04-09T00: 00: 00Z ")," оценка ":" А "," оценка ": 12}, {" дата ": ISODate (" 2013-09-09T00: 00: 00Z ")," оценка ":" А "," оценка ": 10}, { «дата»: ISODate («2013-04-24T00: 00: 00Z»), «оценка»: «C», «оценка»: 0}, {«дата»: ISODate («201 2-06-22T00: 00: 00Z ")," оценка ":" A "," оценка ": 12}, {" дата ": ISODate (" 2011-11-18T00: 00: 00Z ")," оценка " : «A», «оценка»: 11}, {«дата»: ISODate («2011-04-20T00: 00: 00Z»), «оценка»: «B», «оценка»: 15}], «имя ":" Pho Grand "," restaurant_id ":" 41375457 "} {"_id": ObjectId ("564c2d949eb21ad392f199c9"), "address": {"building": "3802", "ordin ": [-73.83283279999999, 40.7600184]," улица ":" улица Принца "," почтовый индекс ":" 11354 "}," городской округ ":" королевы "," кухня ":" вьетнамский / камбоджийский / малайзийский "," классы ": [{" date ": ISODate (" 2014-06-02T00: 00: 00Z ")," оценка ":" А "," оценка ": 9}, {" дата ": ISODate (" 2013-12-03T00: 00: 00Z ")," оценка ":" А "," оценка ": 11}, { «дата»: ISODate («2012-07-19T00: 00: 00Z»), «оценка»: «A», «оценка»: 7}, {«дата»: ISODat e ("2012-03-06T00: 00: 00Z"), "оценка": "A", "оценка": 9}], "name": "Pho Vietnamese Restaurant", "restaurant_id": "41379217"} {"_id": ObjectId ("564c2d949eb21ad392f19a67"), "address": {"building": "85", "ord": [-73.9904772, 40.7179481], "street": "Orchard Street", "zipcode": " 10002 "}," городской округ ":" Манхэттен "," кухня ":" вьетнамский / камбоджийский / малайзийский "," классы ": [{" date ": ISODate (" 2014-12-18T00: 00: 00Z ")," оценка ":" А "," оценка ": 5}, {" дата ": ISODate (" 2013-12-03T00: 00: 00Z ")," оценка ":" А "," оценка ": 4}, { «дата»: ISODate («2013-06-19T00: 00: 00Z»), «оценка»: «A», «оценка»: 9}, {«дата»: ISODate («201 2-11-21T00: 00: 00Z ")," оценка ":" B "," оценка ": 20}, {" дата ": ISODate (" 2012-05-09T00: 00: 00Z ")," оценка " : "A", "score": 9}], "name": "An Choi", "restaurant_id": "41386399"} {"_id": ObjectId ("564c2d949eb21ad392f19cd8"), "address": {"building": "120", "ord": [-74.005578, 40.732983], "street": "улица Кристофера", "почтовый индекс": " 10014 "}," городской округ ":" Манхэттен "," кухня ":" вьетнамский / камбоджийский / малайзийский "," классы ": [{" date ": ISODate (" 2014-09-16T00: 00: 00Z ")," оценка ":" A "," оценка ": 13}, {" дата ": ISODate (" 2014-04-28T00: 00: 00Z ")," оценка ":" C "," оценка ": 2}, { «дата»: ISODate («2013-02-28T00: 00: 00Z»), «оценка»: «A», «оценка»: 10}, {«дата»: ISODate ("2012-10-19T00: 00: 00Z"), "оценка": "C", "оценка": 5}, {"дата": ISODate ("2012-05-02T00: 00: 00Z"), " оценка ":" B "," оценка ": 20}, {" дата ": ISODate (" 2011-11-14T00: 00: 00Z ")," оценка ":" A "," оценка ": 7}], "name": "Baoguette Pho Sure", "restaurant_id": "41414673"} Типа "это" для более
Примечание. Этот вывод генерируется с использованием сервера MongoDB версии 3.6.
Улучшите этот пример решения и опубликуйте свой код через Disqus.
Предыдущий: Напишите запрос MongoDB, чтобы найти рестораны, которые не готовят ни одной американской кухни и набрали более 70 баллов и находятся на долготе менее -65,754168.
Далее: Напишите запрос MongoDB, чтобы найти идентификатор ресторана, название, район и кухню для тех ресторанов, в названии которых в качестве первых трех букв указано «Wil».
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования