MongoDB 練習 – 料理の名前を昇順で表示し、同じ料理の地区を降順で表示します

MongoDB

MongoDB Exercises

MongoDB クエリを作成して、料理の名前を昇順に配置し、同じ料理の地区を降順に配置する必要があります。

「レストラン」コレクションの構造:

{
  "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().sort(
                           {"cuisine":1,"borough" : -1,}
                          );

説明

このMongoDBのクエリコマンドは、’restaurants’という名前のコレクションからすべてのデータを取得し、複数のフィールドを基準にしてソートして返すものです。

  • db.restaurants.find().sort( {"cuisine":1,"borough" : -1,} );

このクエリの動作は以下の通りです:

  • db.restaurants.find():これは、’restaurants’コレクション内のすべての文書を選択しています。フィルタ条件を指定せずに、コレクション内のすべての文書を選択しています。
  • .sort({"cuisine":1,"borough" : -1,}):これはソート操作を行う部分です。ここでは、複数のフィールドを基準にしてソートしています。
  • "cuisine": 1:これは、”cuisine”フィールドを基準に昇順でソートしています。ソートの基準として1を指定しているため、”cuisine”フィールドの値がアルファベット順に昇順でソートされます。
  • "borough": -1:これは、”borough”フィールドを基準に降順でソートしています。ソートの基準として-1を指定しているため、”borough”フィールドの値がアルファベット順に降順でソートされます。

総合すると、このクエリの目的は、’restaurants’コレクション内のすべての文書を選択し、”cuisine”フィールドをアルファベット順に昇順、”borough”フィールドをアルファベット順に降順でソートして返すことです。つまり、料理の種類で昇順にソートし、地区名で降順にソートしたリストを取得します。

Previous:レストラン名をすべての列とともに降順で表示します

Next:すべての住所に番地が含まれているかどうかをテストする

コメント

タイトルとURLをコピーしました