кодесурса
«MongoDB

Язык запросов MongoDB

script1adsense2code
script1adsense3code

Описание

На этой странице мы собираемся обсудить, как язык запросов mongo может использоваться с sort () и может быть реализован как предложение WHERE в SQL.

Сервер MongoDB обрабатывает все параметры запроса как один объект. Некоторые объекты, такие как $ query, $ orderby и т. Д., Могут использоваться для получения того же результата, что и возвращаемый простой язык запросов монго. $ Query может быть оценен как предложение WHERE SQL, а $ orderby сортирует результаты в указанном порядке.

Имя нашей базы данных - «myinfo», а имя нашей коллекции - «userdetails». Вот коллекция ниже.

Коллекция образцов "userdetails"

{
        "_id" : ObjectId("528cab88e1e41035b889f2bf"),
        "user_id" : "user1",
        "password" : "1a2b3c",
        "date_of_join" : "16/10/2010",
        "education" : "M.C.A.",
        "profession" : "CONSULTANT",
        "interest" : "MUSIC",
        "community_name" : [
                "MODERN MUSIC",
                "CLASSICAL MUSIC",
                "WESTERN MUSIC"
        ],
        "community_moder_id" : [
                "MR. Alex",
                "MR. Dang",
                "MR Haris"
        ],
        "community_members" : [
                700,
                200,
                1500
        ],
        "friends_id" : [
                "kumar",
                "harry",
                "anand"
        ],
        "ban_friends_id" : [
                "Amir",
                "Raja",
                "mont"
        ]
}
{
        "_id" : ObjectId("528cabb5e1e41035b889f2c0"),
        "user_id" : "user2",
        "password" : "11aa1a",
        "date_of_join" : "17/10/2009",
        "education" : "M.B.A.",
        "profession" : "MARKETING",
        "interest" : "MUSIC",
        "community_name" : [
                "MODERN MUSIC",
                "CLASSICAL MUSIC",
                "WESTERN MUSIC"
        ],
        "community_moder_id" : [
                "MR. Roy",
                "MR. Das",
                "MR Doglus"
        ],
        "community_members" : [
                500,
                300,
                1400
        ],
        "friends_id" : [
                "pal",
                "viki",
                "john"
        ],
        "ban_friends_id" : [
                "jalan",
                "monoj",
                "evan"
        ]
}
{
        "_id" : ObjectId("528cabd0e1e41035b889f2c1"),
        "user_id" : "user3",
        "password" : "b1c1d1",
        "date_of_join" : "16/10/2010",
        "education" : "M.C.A.",
        "profession" : "IT COR.",
        "interest" : "ART",
        "community_name" : [
                "MODERN ART",
                "CLASSICAL ART",
                "WESTERN ART"
        ],
        "community_moder_id" : [
                "MR. Rifel",
                "MR. Sarma",
                "MR Bhatia"
        ],
        "community_members" : [
                5000,
                2000,
                1500
        ],
        "friends_id" : [
                "philip",
                "anant",
                "alan"
        ],
        "ban_friends_id" : [
                "Amir",
                "Raja",
                "mont"
        ]
}
{
        "_id" : ObjectId("528cabece1e41035b889f2c2"),
        "user_id" : "user4",
        "password" : "abczyx",
        "date_of_join" : "17/8/2009",
        "education" : "M.B.B.S.",
        "profession" : "DOCTOR",
        "interest" : "SPORTS",
        "community_name" : [
                "ATHELATIC",
                "GAMES FAN GYES",
                "FAVOURIT GAMES"
        ],
        "community_moder_id" : [
                "MR. Paul",
                "MR. Das",
                "MR Doglus"
        ],
        "community_members" : [
                2500,
                2200,
                3500
        ],
        "friends_id" : [
                "vinod",
                "viki",
                "john"
        ],
        "ban_friends_id" : [
                "jalan",
                "monoj",
                "evan"
        ]
}

Документ написан в командной строке.

Язык запросов MongoDB с помощью sort ()

Если мы хотим извлечь документы из коллекции «userdetails», которая содержит значение «date_of_join», равное «16/10/2010», а значение «education», равное «MCA», и отсортировать полученные результаты в порядке убывания, выполните следующие действия. Команду mongodb можно использовать:

>db.userdetails.find({"date_of_join" : "16/10/2010","education":"M.C.A."}).sort({"profession":-1}).pretty();

Примечание. Метод find () отображает документы в неструктурированном формате, но для отображения результатов в отформатированном виде можно использовать метод pretty ().

SQL-эквивалентный код

SELECT * 
FROM userdetails 
WHERE date_of_join="16/10/2010"
AND education="M.C.A." 
ORDER BY profession DESC;

Выход:

 {
        "_id": ObjectId ("528cabd0e1e41035b889f2c1"),
        "user_id": "user3",
        "пароль": "b1c1d1",
        "date_of_join": "16/10/2010",
        "образование": "MCA",
        "профессия": "IT COR.",
        «Интерес»: «АРТ»,
        "имя сообщества" : [
                "СОВРЕМЕННОЕ ИСКУССТВО",
                "КЛАССИЧЕСКОЕ ИСКУССТВО",
                "ЗАПАДНОЕ ИСКУССТВО"
        ],
        "community_moder_id": [
                "MR. Rifel",
                "MR. Sarma",
                "MR Bhatia"
        ],
        "community_members": [
                5000,
                2000,
                1500
        ],
        "friends_id": [
                «Филип»,
                "муравей",
                "Алан"
        ],
        "ban_friends_id": [
                «Амир»,
                "Раджа",
                «Мон»
        ]
}
{
        "_id": ObjectId ("528cab88e1e41035b889f2bf"),
        "user_id": "user1",
        "пароль": "1a2b3c",
        "date_of_join": "16/10/2010",
        "образование": "MCA",
        "профессия": "КОНСУЛЬТАНТ",
        «Интерес»: «МУЗЫКА»,
        "имя сообщества" : [
                "СОВРЕМЕННАЯ МУЗЫКА",
                "КЛАССИЧЕСКАЯ МУЗЫКА",
                "ЗАПАДНАЯ МУЗЫКА"
        ],
        "community_moder_id": [
                "MR. Alex",
                "MR. Dang",
                "MR Haris"
        ],
        "community_members": [
                700,
                200,
                1500
        ],
        "friends_id": [
                «Кумар»,
                "Гарри",
                «Ананд»
        ],
        "ban_friends_id": [
                «Амир»,
                "Раджа",
                «Мон»
        ]
}

Документ написан в командной строке.

Приведенный выше вывод показывает, что только те документы, которые были выбраны из коллекции «userdetails», которая содержит значение «date_of_join», равно «16/10/2010», а значение «education» равно «MCA», и документы расположены в в порядке убывания в соответствии со значением «профессия».

Язык запросов MongoDB с $ query и $ orderby

Приведенный выше пример можно записать так:

>db.userdetails.find({$query : {"date_of_join" : "16/10/2010","education":"M.C.A."}, $orderby : {"profession":-1}}).pretty();

Примечание. Метод find () отображает документы в неструктурированном формате, но для отображения результатов в отформатированном виде можно использовать метод pretty ().

Выход:

 {
        "_id": ObjectId ("528cabd0e1e41035b889f2c1"),
        "user_id": "user3",
        "пароль": "b1c1d1",
        "date_of_join": "16/10/2010",
        "образование": "MCA",
        "профессия": "IT COR.",
        «Интерес»: «АРТ»,
        "имя сообщества" : [
                "СОВРЕМЕННОЕ ИСКУССТВО",
                "КЛАССИЧЕСКОЕ ИСКУССТВО",
                "ЗАПАДНОЕ ИСКУССТВО"
        ],
        "community_moder_id": [
                "MR. Rifel",
                "MR. Sarma",
                "MR Bhatia"
        ],
        "community_members": [
                5000,
                2000,
                1500
        ],
        "friends_id": [
                «Филип»,
                "муравей",
                "Алан"
        ],
        "ban_friends_id": [
                «Амир»,
                "Раджа",
                «Мон»
        ]
}
{
        "_id": ObjectId ("528cab88e1e41035b889f2bf"),
        "user_id": "user1",
        "пароль": "1a2b3c",
        "date_of_join": "16/10/2010",
        "образование": "MCA",
        "профессия": "КОНСУЛЬТАНТ",
        «Интерес»: «МУЗЫКА»,
        "имя сообщества" : [
                "СОВРЕМЕННАЯ МУЗЫКА",
                "КЛАССИЧЕСКАЯ МУЗЫКА",
                "ЗАПАДНАЯ МУЗЫКА"
        ],
        "community_moder_id": [
                "MR. Alex",
                "MR. Dang",
                "MR Haris"
        ],
        "community_members": [
                700,
                200,
                1500
        ],
        "friends_id": [
                «Кумар»,
                "Гарри",
                «Ананд»
        ],
        "ban_friends_id": [
                «Амир»,
                "Раджа",
                «Мон»
        ]
}

Документ написан в командной строке.

Предыдущий: MongoDB skip () и limit ()
Далее: MongoDB или операция в запросе

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code