кодесурса
«MongoDB

MongoDB $ in и $ или операция в запросе

script1adsense2code
script1adsense3code

Описание

На этой странице мы обсудим, как $ in и $ or могут использоваться с запросами mongodb.

Оператор $ in проверяет значение в пределах указанных значений в аргументах.

Оператор $ или проверяет, совпадает ли какое-либо из указанных значений в документах.

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

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

{
        "_id" : ObjectId("528f0491bf24dafb4dbb4af5"),
        "user_id" : "user1",
        "password" : "1a2b3c",
        "sex" : "Male",
        "age" : 17,
        "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("528f0532bf24dafb4dbb4af6"),
        "user_id" : "user2",
        "password" : "11aa1a",
        "sex" : "Male",
        "age" : 24,
        "date_of_join" : "17/10/2009",
        "education" : "M.B.A.",
        "profession" : "MARKETING",
        "interest" : " MUSIC",
        "community_name" : [
                "MODERN MUSIC",
                "CLASSICAL MUSIC",
                "WESTERN MUSIC"
        ],
        "co mmunity_moder_id" : [
                "MR. Roy",
                "MR. Das",
                "MR Doglus"
        ],
        "community_members" : [
                500,
                300,
                1400
        ],
        "friends_id" : [
                "pal",
                "viki",
                "john"
        ],
        "ban_friends_id" : [
                "jalan",
                "mono j",
                "evan"
        ]
}
{
        "_id" : ObjectId("528f05eabf24dafb4dbb4af7"),
        "user_id" : "user3",
        "password" : "b1c1d1",
        "sex" : "Female",
        "age" : 19,
        "date_of_join" : "16/10/2010",
        "education" : "M.C.A.",
        "profession" : "IT COR.",
        "interest" : "AR T",
        "community_name" : [
                "MODERN ART",
                "CLASSICAL ART",
                "WESTERN ART"
        ],
        "community_mo der_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("528f08c0bf24dafb4dbb4af8"),
        "user_id" : "user4",
        "password" : "abczyx",
        "sex" : "Female",
        "age" : 22,
        "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 с разделителем $ в

Если мы хотим получить документы из коллекции «userinfo», которая содержит значение «age», равное 19 или 22, можно использовать следующую команду mongodb:

>db.userinfo.find({"age" :{$in :[19,22]}}).pretty();

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

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

SELECT * 
FROM userinfo 
WHERE age IN(19,22);

Выход:

 {
        "_id": ObjectId ("528f05eabf24dafb4dbb4af7"),
        "user_id": "user3",
        "пароль": "b1c1d1",
        "секс": "женский",
        «возраст»: 19,
        "date_of_join": "16/10/2010",
        "образование": "MCA",
        "профессия": "IT COR.",
        «проценты»: «АР Т»,
        "имя сообщества" : [
                "СОВРЕМЕННОЕ ИСКУССТВО",
                "КЛАССИЧЕСКОЕ ИСКУССТВО",
                "ЗАПАДНОЕ ИСКУССТВО"
        ],
        "community_mo der_id": [
                "MR. Rifel",
                "MR. Sarma",
                "MR Bhatia"
        ],
        "community_members": [
                5000,
                2000,
                1500
        ],
        "friends_id": [
                «Филип»,
                "муравей",
                "Алан"
        ],
        "ban_friends_id": [
                «Амир»,
                "Раджа",
                «Мон»
        ]
}
{
        "_id": ObjectId ("528f08c0bf24dafb4dbb4af8"),
        "user_id": "user4",
        "пароль": "abczyx",
        "секс": "женский",
        «возраст»: 22,
        "date_of_join": "17/8/2009",
        "образование": "MBBS",
        "профессия": "ДОКТОР",
        «Интерес»: «СПОРТ»,
        "имя сообщества" : [
                "ATHELATIC",
                "GAMES FAN GYES",
                "FAVOURIT GAMES"
        ],
        "community_moder_id": [
                "MR. Paul",
                "MR. Das",
                "MR Doglus"
        ],
        "community_members": [
                2500,
                2200,
                3500
        ],
        "friends_id": [
                «Винод»,
                "Viki",
                «Джон»
        ],
        "ban_friends_id": [
                "Jalan",
                "Monoj",
                "Evan"
        ]
}

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

Приведенный выше вывод показывает, что только те документы, которые были извлечены из коллекции userinfo и содержат значение age, составляют 19 или 22.

Язык запросов MongoDB с $ или разделителем

Если мы хотим получить документы из коллекции «userinfo», которая должна содержать значение «sex» равно «Male», а либо «age» должно быть «17», либо «date_of_join» должно быть «17/10/2009», можно использовать следующую команду mongodb:

> db.userinfo.find({ "sex" : "Male" , $or : [ { "age" : 17 } , { "date_of_join" : "17/10/2009" } ] } ).pretty();

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

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

SELECT * 
FROM userinfo 
WHERE sex="Male" 
AND (age=17 or date_of_join="17/10/2009");

Выход:

 {
        "_id": ObjectId ("528f0491bf24dafb4dbb4af5"),
        "user_id": "user1",
        "пароль": "1a2b3c",
        "секс": "мужской",
        «возраст»: 17,
        "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": [
                «Амир»,
                "Раджа",
                «Мон»
        ]
}
{
        "_id": ObjectId ("528f0532bf24dafb4dbb4af6"),
        "user_id": "user2",
        "пароль": "11aa1a",
        "секс": "мужской",
        «возраст»: 24,
        "date_of_join": "17/10/2009",
        "образование": "MBA",
        "профессия": "МАРКЕТИНГ",
        «Интерес»: «МУЗЫКА»,
        "имя сообщества" : [
                "СОВРЕМЕННАЯ МУЗЫКА",
                "КЛАССИЧЕСКАЯ МУЗЫКА",
                "ЗАПАДНАЯ МУЗЫКА"
        ],
        "co mmunity_moder_id": [
                "MR. Roy",
                "MR. Das",
                "MR Doglus"
        ],
        "community_members": [
                500,
                300,
                1400
        ],
        "friends_id": [
                «Дружок»,
                "Viki",
                «Джон»
        ],
        "ban_friends_id": [
                "Jalan",
                "моно J",
                "Evan"
        ]
}

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

Предыдущая: язык запросов MongoDB
Далее: запрос MongoDB с нулевым

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


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code