Spec-Zone.ru › RethinkDB javascript

Команда ReQL: min

Синтаксис команды

sequence.min(field | function) → element
sequence.min({index: <indexname>}) → element
r.min(sequence, field | function) → element
r.min(sequence, {index: <indexname>}) → element

Описание

Находит минимальный элемент в последовательности.

Команду min можно вызвать с:

  • именем поля, чтобы вернуть элемент последовательности с наименьшим значением в этом поле;
  • индексом (первичным ключом или вторичным индексом), чтобы вернуть элемент последовательности с наименьшим значением в этом индексе;
  • функцией, чтобы применить функцию к каждому элементу в последовательности и вернуть элемент, который возвращает наименьшее значение от функции, игнорируя элементы, для которых функция возвращает ошибку несоответствия.

Дополнительную информацию о порядке сортировки RethinkDB см. в разделе Типы данных ReQL.

Вызов min для пустой последовательности приведет к ошибке несоответствия; это можно обработать с помощью команды default.

Пример: Вернуть минимальное значение в списке [3, 5, 7].

r.expr([3, 5, 7]).min().run(conn, callback);

Пример: Вернуть пользователя с наименьшим количеством очков.

r.table('users').min('points').run(conn, callback);

Пример: То же самое, что выше, но с использованием вторичного индекса по полю points.

r.table('users').min({index: 'points'}).run(conn, callback);

Пример: Вернуть пользователя с наименьшим количеством очков, добавив бонусные очки из отдельного поля с помощью функции.

r.table('users').min(function(user) {
    return user('points').add(user('bonusPoints'));
}).run(conn, callback);

Пример: Вернуть наименьшее количество очков, набранных любым пользователем. Эта команда возвращает значение поля points, а не документ.

r.table('users').min('points')('points').run(conn, callback);

Пример: Вернуть пользователя с наименьшим количеством очков, но добавить значение по умолчанию null для возврата, чтобы предотвратить ошибку, если ни один пользователь не набрал очков.

r.table('users').min('points').default(null).run(conn, callback);

Связанные команды

  • map
  • reduce
  • count
  • sum
  • avg
  • max
  • group

© RethinkDB contributors
Licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
https://rethinkdb.com/api/javascript/min/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API