кодесурса
«MongoDB

Оператор запроса элемента MongoDB - $ существует

script1adsense2code
script1adsense3code

Описание

На этой странице мы собираемся обсудить использование оператора $ существующие. Оператор $ существующие используется для того, чтобы пользователь мог извлекать документы из коллекции, если в этих документах существует определенное поле или нет.

Вставьте следующий документ в коллекцию «testtable»:

>db.testtable.insert({"user_id":"user5","password":"user5", "sex":"Male","age":21, "date_of_join":"17/08/2011", "education":"MCA", "profession":"S.W. Engineer","interest":"SPORTS","extra":{"community_name" :["ATHELATIC", "GAMES FAN GYES","FAVOURIT GAMES"]}});

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

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

{
        "_id" : ObjectId("528f4e630fe5e6467e58ae7b"),
        "user_id" : "user1",
        "password" : "1a2b3c",
        "sex" : "Male",
        "age" : 17,
        "date_of_join" : "16/10/2010",
        "education" : "M.C.A.",
        "profession" : "CONSULTANT",
        "interest" : "MUSIC",
        "extra" : {
                "community_name" : [
                        "MODERN MUSIC",
                        "CLASSICAL MUSIC",
                        "WESTERN MUSIC"
                ],
                "community_moder_id" : [
                        "MR. Alex",
                        "MR.   Dang",
                        "MR Haris"
                ],
                "community_members" : [
                        700,
                        200,
                        1500
                ],
                "friends" : {
                        "valued_friends_id" : [
                                "kumar",
                                "harry",
                                "anand"
                        ],
                        "ban_friends_id" : [
                                "Amir",
                                "Raja",
                                "mont"
                        ]
                }
        }
}
{
        "_id" : ObjectId("528f4e720fe5e6467e58ae7c"),
        "user_id" : "user2",
        "password" : "11aa1a",
        "sex" : "Male",
        "age" : 24,
        "date_of_join" : "17/10/2009",
        "education" : "M.B.A.",
        "profession" : "MARKETING",
        "interest" : " MUSIC",
        "extra" : {
                "community_name" : [
                        "MODERN MUSIC",
                        "CLASSICAL MUSIC",
                        "WESTERN MUSIC"
                ],
                "co mmunity_moder_id" : [
                        "MR. Roy",
                        "MR. Das",
                        "MR Doglus"
                ],
                "community_members" : [
                        500,
                        300,
                        1400
                ],
                "friends" : {
                        "valued_friends_id" : [
                                "pal",
                                "viki",
                                "john"
                        ],
                        "ban_friends_id" : [
                                "jalan",
                                "mono j",
                                "evan"
                        ]
                }
        }
}
{
        "_id" : ObjectId("528f4e7e0fe5e6467e58ae7d"),
        "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",
        "extra" : {
                "community_name" : [
                        "MODERN ART",
                        "CLASSICAL ART",
                        "WESTERN ART"
                ],
                "community_mo der_id" : [
                        "MR. Rifel",
                        "MR. Sarma",
                        "MR Bhatia"
                ],
                "community_members" : [
                        5000,
                        2000,
                        1500
                ],
                "friends" : {
                        "valued_friends_id" : [
                                "philip",
                                "anant",
                                "alan"
                        ],
                        "ban_friends_id" : [
                                "Amir",
                                "Raja",
                                "mont"
                        ]
                }
        }
}
{
        "_id" : ObjectId("528f4e910fe5e6467e58ae7e"),
        "user_id" : "user4",
        "password" : "abczyx",
        "sex" : "Female",
        "age" : 22,
        "date_of_join" : "17/8/2009",
        "education" : "M.B.B.S.",
        "profession" : "DOCTOR",
        "interest" : "SPORTS",
        "extra" : {
                "community_name" : [
                        "ATHELATIC",
                        "GAMES FAN GYES",
                        "FAVOURIT GAMES"
                ],
                "community_moder_id" : [
                        "MR. Paul",
                        "MR. Das",
                        "MR Doglus"
                ],
                "community_members" : [
                        2500,
                        2200,
                        3500
                ],
                "friends" : {
                        "valued_friends_id" : [
                                "vinod",
                                "viki",
                                "john"
                        ],
                        "ban_friends_id" : [
                                "jalan",
                                "monoj",
                                "evan"
                        ]
                }
        }
}
{
        "_id" : ObjectId("528f4f8a0fe5e6467e58ae7f"),
        "user_id" : "user5",
        "password" : "user5",
        "sex" : "Male",
        "age" : 21,
        "date_of_join" : "17/08/2011",
        "education" : "MCA",
        "profession" : "S.W. Engineer",
        "interest" : "SPORTS",
        "extra" : {
                "community_name" : [
                        "ATHELATIC",
                        "GAMES FAN GYES",
                        "FAVOURIT GAMES"
                ]
        }
}

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

MongoDB $ существует оператор с истинным ключевым словом

Если мы хотим получить документы из коллекции «testtable», где существует поле «community_members», можно использовать следующую команду mongodb:

>db.testtable.find({"extra.community_members" : { $exists : true } } ).pretty();

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

Вывод команды:

 {
        "_id": ObjectId ("528f4e630fe5e6467e58ae7b"),
        "user_id": "user1",
        "пароль": "1a2b3c",
        "секс": "мужской",
        «возраст»: 17,
        "date_of_join": "16/10/2010",
        "образование": "MCA",
        "профессия": "КОНСУЛЬТАНТ",
        «Интерес»: «МУЗЫКА»,
        "extra": {
                "имя сообщества" : [
                        "СОВРЕМЕННАЯ МУЗЫКА",
                        "КЛАССИЧЕСКАЯ МУЗЫКА",
                        "ЗАПАДНАЯ МУЗЫКА"
                ],
                "community_moder_id": [
                        "MR. Alex",
                        "MR. Dang",
                        "MR Haris"
                ],
                "community_members": [
                        700,
                        200,
                        1500
                ],
                "друзья": {
                        "valued_friends_id": [
                                «Кумар»,
                                "Гарри",
                                «Ананд»
                        ],
                        "ban_friends_id": [
                                «Амир»,
                                "Раджа",
                                «Мон»
                        ]
                }
        }
}
{
        "_id": ObjectId ("528f4e720fe5e6467e58ae7c"),
        "user_id": "user2",
        "пароль": "11aa1a",
        "секс": "мужской",
        «возраст»: 24,
        "date_of_join": "17/10/2009",
        "образование": "MBA",
        "профессия": "МАРКЕТИНГ",
        «Интерес»: «МУЗЫКА»,
        "extra": {
                "имя сообщества" : [
                        "СОВРЕМЕННАЯ МУЗЫКА",
                        "КЛАССИЧЕСКАЯ МУЗЫКА",
                        "ЗАПАДНАЯ МУЗЫКА"
                ],
                "co mmunity_moder_id": [
                        "MR. Roy",
                        "MR. Das",
                        "MR Doglus"
                ],
                "community_members": [
                        500,
                        300,
                        1400
                ],
                "друзья": {
                        "valued_friends_id": [
                                «Дружок»,
                                "Viki",
                                «Джон»
                        ],
                        "ban_friends_id": [
                                "Jalan",
                                "моно J",
                                "Evan"
                        ]
                }
        }
}
{
        "_id": ObjectId ("528f4e7e0fe5e6467e58ae7d"),
        "user_id": "user3",
        "пароль": "b1c1d1",
        "секс": "женский",
        «возраст»: 19,
        "date_of_join": "16/10/2010",
        "образование": "MCA",
        "профессия": "IT COR.",
        «проценты»: «АР Т»,
        "extra": {
                "имя сообщества" : [
                        "СОВРЕМЕННОЕ ИСКУССТВО",
                        "КЛАССИЧЕСКОЕ ИСКУССТВО",
                        "ЗАПАДНОЕ ИСКУССТВО"
                ],
                "community_mo der_id": [
                        "MR. Rifel",
                        "MR. Sarma",
                        "MR Bhatia"
                ],
                "community_members": [
                        5000,
                        2000,
                        1500
                ],
                "друзья": {
                        "valued_friends_id": [
                                «Филип»,
                                "муравей",
                                "Алан"
                        ],
                        "ban_friends_id": [
                                «Амир»,
                                "Раджа",
                                «Мон»
                        ]
                }
        }
}
{
        "_id": ObjectId ("528f4e910fe5e6467e58ae7e"),
        "user_id": "user4",
        "пароль": "abczyx",
        "секс": "женский",
        «возраст»: 22,
        "date_of_join": "17/8/2009",
        "образование": "MBBS",
        "профессия": "ДОКТОР",
        «Интерес»: «СПОРТ»,
        "extra": {
                "имя сообщества" : [
                        "ATHELATIC",
                        "GAMES FAN GYES",
                        "FAVOURIT GAMES"
                ],
                "community_moder_id": [
                        "MR. Paul",
                        "MR. Das",
                        "MR Doglus"
                ],
                "community_members": [
                        2500,
                        2200,
                        3500
                ],
                "друзья": {
                        "valued_friends_id": [
                                «Винод»,
                                "Viki",
                                «Джон»
                        ],
                        "ban_friends_id": [
                                "Jalan",
                                "Monoj",
                                "Evan"
                        ]
                }
        }
}

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

Приведенный выше вывод показывает, что документы появляются из коллекции, содержащей поле «community_members» в каждом документе, поскольку использовалось ключевое слово «true» вместе с оператором $ существующие.

MongoDB $ существует оператор с ключевым словом «ложь»

Если мы хотим получить документы из коллекции «testtable», где поле «community_members» не существует, можно использовать следующую команду mongodb:

>db.testtable.find({"extra.community_members" : { $exists : false } } ).pretty();

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

Вывод команды:

 {
        "_id": ObjectId ("528f4f8a0fe5e6467e58ae7f"),
        "user_id": "user5",
        "пароль": "user5",
        "секс": "мужской",
        «возраст»: 21,
        "date_of_join": "17/08/2011",
        "образование": "MCA",
        «профессия»: «инженер SW»,
        «Интерес»: «СПОРТ»,
        "extra": {
                "имя сообщества" : [
                        "ATHELATIC",
                        "GAMES FAN GYES",
                        "FAVOURIT GAMES"
                ]
        }
}

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

Приведенный выше вывод показывает, что документы из коллекции не содержат поля "community_members" в каждом документе, поскольку использовалось ключевое слово 'false' вместе с оператором $ существующие.

Предыдущая: $ или $ nor
Далее: $ type

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


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code