MongoDB Exercise - Find the restaurants which do not prepare any cuisine of American and achieved a grade point A not belongs to the borough Brooklyn
Write a MongoDB query to find the restaurants which do not prepare any cuisine of 'American ' and achieved a grade point 'A' not belongs to the borough Brooklyn.
The document must be displayed according to the cuisine in descending order.
Structure of 'restaurants' collection :
{ "address": { "building": "1007", "coord": [ -73.856077, 40.848447 ], "street": "Morris Park Ave", "zipcode": "10462" }, "borough": "Bronx", "cuisine": "Bakery", "grades": [ { "date": { "$date": 1393804800000 }, "grade": "A", "score": 2 }, { "date": { "$date": 1378857600000 }, "grade": "A", "score": 6 }, { "date": { "$date": 1358985600000 }, "grade": "A", "score": 10 }, { "date": { "$date": 1322006400000 }, "grade": "A", "score": 9 }, { "date": { "$date": 1299715200000 }, "grade": "B", "score": 14 } ], "name": "Morris Park Bake Shop", "restaurant_id": "30075445" }
Query:
db.restaurants.find( {
"cuisine" : {$ne : "American "},
"grades.grade" :"A",
"borough": {$ne : "Brooklyn"}
}
).sort({"cuisine":-1});
Output:
{ "_id" : ObjectId("564c2d949eb21ad392f17cd5"), "address" : { "building" : "89", "coord" : [ -73.9995899, 40.7168015 ], "street" : "Baxter Street", "zipcode" : "10013" }, "borough" : "Manhattan", "cuisine" : "Vietnamese/Cambodian/Malaysia", "grades" : [ { "date" : ISODate("2014-08-21T00:00:00Z"), "grade" : "A", "score" : 13 }, { "date" : ISODate("2013-08-31T00:00:00Z"), "grade" : "A", "score" : 13 }, { "date" : ISODate("2013-04-11T00:00:00Z"), "grade" : "C", "score" : 3 }, { "date" : ISODate("20 12-10-17T00:00:00Z"), "grade" : "A", "score" : 4 }, { "date" : ISODate("2012-05-15T00:00:00Z"), "grade" : "A", "score" : 10 } ], "name" : "Thai Son", "restaurant_id" : "40559606" } { "_id" : ObjectId("564c2d949eb21ad392f17d8e"), "address" : { "building" : "8278", "coord" : [ -73.88143509999999, 40.7412552 ], "street" : "Broadway", "zipcode" : "11373" }, "borough" : "Queens", "cuisine" : "Vietnamese/Cambodian/Malaysia", "grades" : [ { "date" : ISODate("2014-06-12T00:00:00Z"), "grade" : "B", "score" : 21 }, { "date" : ISODate("2013-05-20T00:00:00Z"), "grade" : "A", "score" : 13 }, { "date" : ISODate("2012-12-26T00:00:00Z"), "grade" : "A", "score" : 10 }, { "date" : ISODate(" 2012-12-03T00:00:00Z"), "grade" : "P", "score" : 5 }, { "date" : ISODate("2012-05-04T00:00:00Z"), "grade" : "B", "score" : 27 } ], "name" : "Pho Bac Vietnamese Seafood Cuisine", "restaurant_id" : "40578058" } { "_id" : ObjectId("564c2d949eb21ad392f18177"), "address" : { "building" : "148", "coord" : [ -74.000254, 40.7172727 ], "street" : "Centre Street", "zipcode" : "10013" }, "borough" : "Manhattan", "cuisine" : "Vietnamese/Cambodian/Malaysia", "grades" : [ { "date" : ISODate("2014-10-01T00:00:00Z"), "grade" : "A", "score" : 7 }, { "date" : ISODate("2014-05-19T00:00:00Z"), "grade" : "C", "score" : 5 }, { "date" : ISODate("2013-11-15T00:00:00Z"), "grade" : "B", "score" : 14 }, { "date" : ISODate("201 3-03-08T00:00:00Z"), "grade" : "B", "score" : 25 }, { "date" : ISODate("2012-05-22T00:00:00Z"), "grade" : "B", "score" : 23 }, { "date" : ISODate("2011-10-27T00:00:00Z"), "grade" : "A", "score" : 9 } ], "name" : "Nha-Trang Centre Vietnam Restaurant", "restaurant_id" : "40751226" } { "_id" : ObjectId("564c2d949eb21ad392f1848d"), "address" : { "building" : "158", "coord" : [ -74.0025903, 40.7443077 ], "street" : "9 Avenue", "zipcode" : "10011" }, "borough" : "Manhattan", "cuisine" : "Vietnamese/Cambodian/Malaysia", "grades" : [ { "date" : ISODate("2014-07-15T00:00:00Z"), "grade" : "A", "score" : 11 }, { "date" : ISODate("2014-01-14T00:00:00Z"), "grade" : "A", "score" : 9 }, { "date" : ISODate("2013-04-16T00:00:00Z"), "grade" : "B", "score" : 18 }, { "date" : ISODate("2012-0 2-15T00:00:00Z"), "grade" : "A", "score" : 7 } ], "name" : "O-Mai", "restaurant_id" : "40903063" } { "_id" : ObjectId("564c2d949eb21ad392f1871f"), "address" : { "building" : "87", "coord" : [ -73.99961909999999, 40.7167408 ], "street" : "Baxter Street", "zipcode" : "10013" }, "borough" : "Manhattan", "cuisine" : "Vietnamese/Cambodian/Malaysia", "grades" : [ { "date" : ISODate("2015-01-06T00:00:00Z"), "grade" : "A", "score" : 11 }, { "date" : ISODate("2014-01-23T00:00:00Z"), "grade" : "A", "score" : 10 }, { "date" : ISODate("2013-01-08T00:00:00Z"), "grade" : "A", "score" : 13 }, { "date" : ISO Date("2012-06-05T00:00:00Z"), "grade" : "A", "score" : 10 } ], "name" : "Nha Trang Restaurant", "restaurant_id" : "40989220" } { "_id" : ObjectId("564c2d949eb21ad392f187c5"), "address" : { "building" : "80", "coord" : [ -73.99862900000001, 40.7158191 ], "street" : "Bayard Street", "zipcode" : "10013" }, "borough" : "Manhattan", "cuisine" : "Vietnamese/Cambodian/Malaysia", "grades" : [ { "date" : ISODate("2014-11-07T00:00:00Z"), "grade" : "B", "score" : 27 }, { "date" : ISODate("2014-07-05T00:00:00Z"), "grade" : "B", "score" : 27 }, { "date" : ISODate("2013-10-29T00:00:00Z"), "grade" : "A", "score" : 2 }, { "date" : ISOD ate("2013-06-28T00:00:00Z"), "grade" : "C", "score" : 5 }, { "date" : ISODate("2013-01-22T00:00:00Z"), "grade" : "B", "score" : 14 }, { "date" : ISODate("2012-07-18T00:00:00Z"), "grade" : "C", "score" : 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", "coord" : [ -73.8087286, 40.7639199 ], "street" : "Northern Boulevard", "zipcode" : "11354" }, "borough" : "Queens", "cuisine" : "Vietnamese/Cambodian/Malaysia", "grades" : [ { "date" : ISODate("2014-09-11T00:00:00Z"), "grade" : "A", "score" : 13 }, { "date" : ISODate("2014-04-08T00:00:00Z"), "grade" : "A", "score" : 11 }, { "date" : ISODate("2013-10-07T00:00:00Z"), "grade" : "A", "score" : 12 }, { "date" : ISOD ate("2012-09-13T00:00:00Z"), "grade" : "A", "score" : 2 }, { "date" : ISODate("2012-04-26T00:00:00Z"), "grade" : "A", "score" : 7 }, { "date" : ISODate("2011-11-09T00:00:00Z"), "grade" : "A", "score" : 10 } ], "name" : "Mekong Thai And Vietnamese Restaurant", "restaurant_id" : "41022628" } { "_id" : ObjectId("564c2d949eb21ad392f188a9"), "address" : { "building" : "2", "coord" : [ -73.9862038, 40.747189 ], "street" : "West 32 Street", "zipcode" : "10001" }, "borough" : "Manhattan", "cuisine" : "Vietnamese/Cambodian/Malaysia", "grades" : [ { "date" : ISODate("2014-12-01T00:00:00Z"), "grade" : "Z", "score" : 18 }, { "date" : ISODate("2014-05-27T00:00:00Z"), "grade" : "A", "score" : 12 }, { "date" : ISODate("2013-10-01T00:00:00Z"), "grade" : "B", "score" : 17 }, { "date" : ISODate(" 2012-09-21T00:00:00Z"), "grade" : "A", "score" : 7 }, { "date" : ISODate("2012-03-05T00:00:00Z"), "grade" : "A", "score" : 13 } ], "name" : "Pho 32 & Shabu", "restaurant_id" : "41026002" } { "_id" : ObjectId("564c2d949eb21ad392f189d1"), "address" : { "building" : "345", "coord" : [ -74.0102595, 40.7184972 ], "street" : "Greenwich Street", "zipcode" : "10013" }, "borough" : "Manhattan", "cuisine" : "Vietnamese/Cambodian/Malaysia", "grades" : [ { "date" : ISODate("2014-08-22T00:00:00Z"), "grade" : "A", "score" : 9 }, { "date" : ISODate("2014-03-15T00:00:00Z"), "grade" : "B", "score" : 18 }, { "date" : ISODate("2012-10-17T00:00:00Z"), "grade" : "A", "score" : 10 }, { "date" : ISODate ("2012-05-08T00:00:00Z"), "grade" : "B", "score" : 19 }, { "date" : ISODate("2011-12-16T00:00:00Z"), "grade" : "A", "score" : 12 } ], "name" : "Viet Cafe", "restaurant_id" : "41063946" } { "_id" : ObjectId("564c2d949eb21ad392f18cc5"), "address" : { "building" : "4107", "coord" : [ -73.8293161, 40.7583823 ], "street" : "Kissena Boulevard", "zipcode" : "11355" }, "borough" : "Queens", "cuisine" : "Vietnamese/Cambodian/Malaysia", "grades" : [ { "date" : ISODate("2014-11-13T00:00:00Z"), "grade" : "A", "score" : 10 }, { "date" : ISODate("2014-05-20T00:00:00Z"), "grade" : "A", "score" : 8 }, { "date" : ISODate("2013-10-16T00:00:00Z"), "grade" : "B", "score" : 22 }, { "date" : ISODate( "2013-03-20T00:00:00Z"), "grade" : "B", "score" : 18 }, { "date" : ISODate("2012-08-01T00:00:00Z"), "grade" : "B", "score" : 16 }, { "date" : ISODate("2011-12-14T00:00:00Z"), "grade" : "B", "score" : 17 } ], "name" : "Pho Bang Restaurant", "restaurant_id" : "41145163" } { "_id" : ObjectId("564c2d949eb21ad392f18ead"), "address" : { "building" : "342", "coord" : [ -73.986646, 40.7264594 ], "street" : "East 6 Street", "zipcode" : "10003" }, "borough" : "Manhattan", "cuisine" : "Vietnamese/Cambodian/Malaysia", "grades" : [ { "date" : ISODate("2014-12-04T00:00:00Z"), "grade" : "A", "score" : 11 }, { "date" : ISODate("2014-06-27T00:00:00Z"), "grade" : "A", "score" : 8 }, { "date" : ISODate("2013-07-30T00:00:00Z"), "grade" : "A", "score" : 13 }, { "date" : ISODate("20 12-05-31T00:00:00Z"), "grade" : "A", "score" : 10 } ], "name" : "Lan Cafe", "restaurant_id" : "41184550" } { "_id" : ObjectId("564c2d949eb21ad392f18f5e"), "address" : { "building" : "18", "coord" : [ -74.0034562, 40.7275645 ], "street" : "King Street", "zipcode" : "10014" }, "borough" : "Manhattan", "cuisine" : "Vietnamese/Cambodian/Malaysia", "grades" : [ { "date" : ISODate("2014-02-18T00:00:00Z"), "grade" : "A", "score" : 12 }, { "date" : ISODate("2013-08-20T00:00:00Z"), "grade" : "A", "score" : 10 }, { "date" : ISODate("2013-03-05T00:00:00Z"), "grade" : "C", "score" : 45 }, { "date" : ISODate("201 2-04-06T00:00:00Z"), "grade" : "B", "score" : 19 }, { "date" : ISODate("2011-09-22T00:00:00Z"), "grade" : "A", "score" : 9 } ], "name" : "New Mekong Restaurant", "restaurant_id" : "41202673" } { "_id" : ObjectId("564c2d949eb21ad392f19025"), "address" : { "building" : "4010", "coord" : [ -73.8915947, 40.746408 ], "street" : "74 Street", "zipcode" : "11373" }, "borough" : "Queens", "cuisine" : "Vietnamese/Cambodian/Malaysia", "grades" : [ { "date" : ISODate("2014-08-12T00:00:00Z"), "grade" : "A", "score" : 7 }, { "date" : ISODate("2014-01-09T00:00:00Z"), "grade" : "B", "score" : 25 }, { "date" : ISODate("2013-06-25T00:00:00Z"), "grade" : "A", "score" : 13 }, { "date" : ISODate("2012-05- 07T00:00:00Z"), "grade" : "A", "score" : 12 }, { "date" : ISODate("2011-12-28T00:00:00Z"), "grade" : "A", "score" : 12 } ], "name" : "Thai Son", "restaurant_id" : "41221266" } { "_id" : ObjectId("564c2d949eb21ad392f19232"), "address" : { "building" : "369", "coord" : [ -73.9959432, 40.7200254 ], "street" : "Broome Street", "zipcode" : "10013" }, "borough" : "Manhattan", "cuisine" : "Vietnamese/Cambodian/Malaysia", "grades" : [ { "date" : ISODate("2014-08-01T00:00:00Z"), "grade" : "A", "score" : 9 }, { "date" : ISODate("2014-02-11T00:00:00Z"), "grade" : "A", "score" : 13 }, { "date" : ISODate("2013-01-24T00:00:00Z"), "grade" : "A", "score" : 12 }, { "date" : ISODate("2 012-06-22T00:00:00Z"), "grade" : "A", "score" : 5 }, { "date" : ISODate("2012-01-18T00:00:00Z"), "grade" : "A", "score" : 2 } ], "name" : "Saigon Vietnamese Sandwich", "restaurant_id" : "41254832" } { "_id" : ObjectId("564c2d949eb21ad392f1973f"), "address" : { "building" : "82-90", "coord" : [ -73.8848687, 40.743896 ], "street" : "Broadway", "zipcode" : "11373" }, "borough" : "Queens", "cuisine" : "Vietnamese/Cambodian/Malaysia", "grades" : [ { "date" : ISODate("2014-07-02T00:00:00Z"), "grade" : "B", "score" : 26 }, { "date" : ISODate("2013-10-23T00:00:00Z"), "grade" : "B", "score" : 18 }, { "date" : ISODate("2013-05-30T00:00:00Z"), "grade" : "B", "score" : 22 }, { "date" : ISODate("2012-12 -18T00:00:00Z"), "grade" : "A", "score" : 7 }, { "date" : ISODate("2012-09-04T00:00:00Z"), "grade" : "C", "score" : 10 }, { "date" : ISODate("2012-02-24T00:00:00Z"), "grade" : "B", "score" : 17 } ], "name" : "Pho Bang Restaurant", "restaurant_id" : "41338955" } { "_id" : ObjectId("564c2d949eb21ad392f19966"), "address" : { "building" : "102", "coord" : [ -73.99543899999999, 40.717846 ], "street" : "Bowery", "zipcode" : "10013" }, "borough" : "Manhattan", "cuisine" : "Vietnamese/Cambodian/Malaysia", "grades" : [ { "date" : ISODate("2014-12-20T00:00:00Z"), "grade" : "A", "score" : 13 }, { "date" : ISODate("2014-07-08T00:00:00Z"), "grade" : "A", "score" : 11 }, { "date" : ISODate("2013-11-25T00:00:00Z"), "grade" : "A", "score" : 6 }, { "date" : ISODate("20 13-04-04T00:00:00Z"), "grade" : "B", "score" : 15 }, { "date" : ISODate("2012-08-21T00:00:00Z"), "grade" : "A", "score" : 13 }, { "date" : ISODate("2012-03-22T00:00:00Z"), "grade" : "A", "score" : 13 } ], "name" : "New Tu Do Restaurant", "restaurant_id" : "41374711" } { "_id" : ObjectId("564c2d949eb21ad392f1996f"), "address" : { "building" : "277", "coord" : [ -73.9927639, 40.717627 ], "street" : "Grand Street", "zipcode" : "10002" }, "borough" : "Manhattan", "cuisine" : "Vietnamese/Cambodian/Malaysia", "grades" : [ { "date" : ISODate("2014-04-09T00:00:00Z"), "grade" : "A", "score" : 12 }, { "date" : ISODate("2013-09-09T00:00:00Z"), "grade" : "A", "score" : 10 }, { "date" : ISODate("2013-04-24T00:00:00Z"), "grade" : "C", "score" : 0 }, { "date" : ISODate("201 2-06-22T00:00:00Z"), "grade" : "A", "score" : 12 }, { "date" : ISODate("2011-11-18T00:00:00Z"), "grade" : "A", "score" : 11 }, { "date" : ISODate("2011-04-20T00:00:00Z"), "grade" : "B", "score" : 15 } ], "name" : "Pho Grand", "restaurant_id" : "41375457" } { "_id" : ObjectId("564c2d949eb21ad392f199c9"), "address" : { "building" : "3802", "coord" : [ -73.83283279999999, 40.7600184 ], "street" : "Prince Street", "zipcode" : "11354" }, "borough" : "Queens", "cuisine" : "Vietnamese/Cambodian/Malaysia", "grades" : [ { "date" : ISODate("2014-06-02T00:00:00Z"), "grade" : "A", "score" : 9 }, { "date" : ISODate("2013-12-03T00:00:00Z"), "grade" : "A", "score" : 11 }, { "date" : ISODate("2012-07-19T00:00:00Z"), "grade" : "A", "score" : 7 }, { "date" : ISODat e("2012-03-06T00:00:00Z"), "grade" : "A", "score" : 9 } ], "name" : "Pho Vietnamese Restaurant", "restaurant_id" : "41379217" } { "_id" : ObjectId("564c2d949eb21ad392f19a67"), "address" : { "building" : "85", "coord" : [ -73.9904772, 40.7179481 ], "street" : "Orchard Street", "zipcode" : "10002" }, "borough" : "Manhattan", "cuisine" : "Vietnamese/Cambodian/Malaysia", "grades" : [ { "date" : ISODate("2014-12-18T00:00:00Z"), "grade" : "A", "score" : 5 }, { "date" : ISODate("2013-12-03T00:00:00Z"), "grade" : "A", "score" : 4 }, { "date" : ISODate("2013-06-19T00:00:00Z"), "grade" : "A", "score" : 9 }, { "date" : ISODate("201 2-11-21T00:00:00Z"), "grade" : "B", "score" : 20 }, { "date" : ISODate("2012-05-09T00:00:00Z"), "grade" : "A", "score" : 9 } ], "name" : "An Choi", "restaurant_id" : "41386399" } { "_id" : ObjectId("564c2d949eb21ad392f19cd8"), "address" : { "building" : "120", "coord" : [ -74.005578, 40.732983 ], "street" : "Christopher Street", "zipcode" : "10014" }, "borough" : "Manhattan", "cuisine" : "Vietnamese/Cambodian/Malaysia", "grades" : [ { "date" : ISODate("2014-09-16T00:00:00Z"), "grade" : "A", "score" : 13 }, { "date" : ISODate("2014-04-28T00:00:00Z"), "grade" : "C", "score" : 2 }, { "date" : ISODate("2013-02-28T00:00:00Z"), "grade" : "A", "score" : 10 }, { "date" : ISODate ("2012-10-19T00:00:00Z"), "grade" : "C", "score" : 5 }, { "date" : ISODate("2012-05-02T00:00:00Z"), "grade" : "B", "score" : 20 }, { "date" : ISODate("2011-11-14T00:00:00Z"), "grade" : "A", "score" : 7 } ], "name" : "Baoguette Pho Sure", "restaurant_id" : "41414673" } Type "it" for more
Note: This output is generated using MongoDB server version 3.6
Improve this sample solution and post your code through Disqus.
Previous: Write a MongoDB query to find the restaurants which do not prepare any cuisine of American and achieved a score more than 70 and located in the longitude less than -65.754168.
Next: Write a MongoDB query to find the restaurant Id, name, borough and cuisine for those restaurants which contain 'Wil' as first three letters for its name.
What is the difficulty level of this exercise?
- New Content published on w3resource:
- HTML-CSS Practical: Exercises, Practice, Solution
- Java Regular Expression: Exercises, Practice, Solution
- Scala Programming Exercises, Practice, Solution
- Python Itertools exercises
- Python Numpy exercises
- Python GeoPy Package exercises
- Python Pandas exercises
- Python nltk exercises
- Python BeautifulSoup exercises
- Form Template
- Composer - PHP Package Manager
- PHPUnit - PHP Testing
- Laravel - PHP Framework
- Angular - JavaScript Framework
- Vue - JavaScript Framework
- Jest - JavaScript Testing Framework