MongoDB: cursor.min () метод
cursor.min
Метод cursor.min () используется для указания включающей нижней границы для конкретного индекса, чтобы ограничить результаты find (). Этот метод позволяет указать нижние границы индексов составного ключа.
Синтаксис:
cursor.min ()
Параметры:
название | Описание | Необходимые / Необязательный | Тип |
---|---|---|---|
indexBounds | Включающая нижняя граница для ключей индекса. | необходимые | документ |
Параметр indexBounds имеет следующую форму прототипа:
{field1: <min value>, field2: <min value2> ... fieldN: <min valueN>}
Поля соответствуют всем ключам определенного индекса по порядку. Вы можете явно указать конкретный индекс с помощью метода hint (). В противном случае MongoDB выбирает индекс, используя поля в indexBounds; однако, если в одних полях с разными порядками сортировки существует несколько индексов, выбор индекса может быть неоднозначным.
min () существует главным образом для поддержки процесса mongos и является оболочкой оболочки для модификатора запроса $ min.
Пример документа в коллекции prod_mast:
> db.prod_mast.find().pretty();
{ "_id" : 5, "item" : "mango", "type" : "cortland", "cost" : 1.29 }
{ "_id" : 9, "item" : "mango", "type" : "fuji", "cost" : 1.99 }
{ "_id" : 7, "item" : "mango", "type" : "honey crisp", "cost" : 1.99 }
{ "_id" : 10, "item" : "mango", "type" : "jonagold", "cost" : 1.29 }
{ "_id" : 1, "item" : "mango", "type" : "jonathan", "cost" : 1.29 }
{ "_id" : 6, "item" : "mango", "type" : "mcintosh", "cost" : 1.29 }
{ "_id" : 8, "item" : "orange", "type" : "cara cara", "cost" : 2.99 }
{ "_id" : 4, "item" : "orange", "type" : "navel", "cost" : 1.39 }
{ "_id" : 3, "item" : "orange", "type" : "satsuma", "pcost" : 1.99 }
{ "_id" : 2, "item" : "orange", "type" : "valencia", "cost" : 0.99 }
Коллекция имеет следующие индексы:
> db.prod_mast.getIndexes();
[
{
"v" : 1,
"key" : {
"_id" : 1
},
"name" : "_id_",
"ns" : "test.prod_mast"
},
{
"v" : 1,
"key" : {
"item" : 1,
"type" : 1
},
"name" : "item_1_type_1",
"ns" : "test.prod_mast"
},
{
"v" : 1,
"key" : {
"item" : 1,
"type" : -1
},
"name" : "item_1_type_-1",
"ns" : "test.prod_mast"
},
{
"v" : 1,
"key" : {
"cost" : 1
},
"name" : "cost_1",
"ns" : "test.prod_mast"
}
]
Пример: MongoDB: cursor.min () метод
В следующем примере возвращаются документы с использованием порядка {item: 1, type: 1} index, min () для документов, которые находятся ниже границы одинакового tomango и typeequal tojonagold.
db.prod_mast.find().min( { item: 'mango', type: 'jonagold' } ).hint( { item: 1, type: 1 } );
Выход:
> db.prod_mast.find (). min ({item: 'mango', тип: 'jonagold'}) .hint ({item: 1, type: 1}); {"_id": 10, "item": "mango", "type": "jonagold", "cost": 1.29} {"_id": 1, "item": "mango", "type": "jonathan", "cost": 1.29} {"_id": 6, "item": "mango", "type": "mcintosh", "cost": 1.29} {"_id": 8, "item": "orange", "type": "cara cara", "cost": 2.99} {"_id": 4, "item": "orange", "type": "navel", "cost": 1.39} {"_id": 3, "item": "orange", "type": "satsuma", "pcost": 1.99} {"_id": 2, "item": "orange", "type": "valencia", "cost": 0.99}
Получить данные о ресторанах здесь
Предыдущая: метод cursor.max ()
Далее: метод cursor.next ()
Новый контент: Composer: менеджер зависимостей для PHP , R программирования