Docs Menu
Docs Home
/ /
CRUD

CRUD - Lectura - SDK de Node.js

Si conoce la clave principal de un objeto determinado, puede buscarla directamente con Reino.objectForPrimaryKey().

const myTask = realm.objectForPrimaryKey("Task", 12342245); // search for a realm object with a primary key that is an int.

Para consultar objetos de un tipo específico en un realm, pasa el nombre del tipo a Realm.objects().

Las operaciones de consulta devuelven una colección de objetos Realm que coinciden con la consulta como un objeto Realm.Results.Una consulta básica busca todos los objetos de un tipo determinado en un dominio, pero también se puede aplicar un filtro a la colección para encontrar objetos específicos.

// Query realm for all instances of the "Task" type.
const tasks = realm.objects("Task");

Un filtro selecciona un subconjunto de resultados según los valores de una o más propiedades de un objeto. Realm permite filtrar datos mediante el lenguaje de consulta de Realm, un lenguaje de consulta basado en cadenas, para restringir las búsquedas al recuperar objetos de un dominio.

Para filtrar una consulta, llame a filtered() en la colección de resultados de la consulta. Pase una consulta de lenguaje de consulta Realm como argumento a filtered().

En el siguiente ejemplo, utilizamos los operadores de comparación del motor de consulta para:

  • Encuentre tareas de alta prioridad comparando el valor de la propiedad priority con un número umbral, por encima del cual la prioridad puede considerarse alta.

  • Encuentre tareas recién iniciadas o de corta duración observando si la propiedad progressMinutes se encuentra dentro de un rango determinado.

// retrieve the set of Task objects
const tasks = realm.objects("Task");
// filter for tasks with a high priority
const highPriorityTasks = tasks.filtered("priority > $0", 5);
// filter for tasks that have just-started or short-running progress
const lowProgressTasks = tasks.filtered(
"$0 <= progressMinutes && progressMinutes < $1",
1,
10
);
console.log(
`Number of high priority tasks: ${highPriorityTasks.length} \n`,
`Number of just-started or short-running tasks: ${lowProgressTasks.length}`
);

Tip

Filtrar por propiedades de objetos relacionados e incrustados

Para filtrar una consulta en función de una propiedad de un objeto incrustado o un objeto relacionado, utilice la notación de puntos como si se tratara de un objeto anidado normal.

Una operación de ordenación permite configurar el orden en que Realm devuelve los objetos consultados. Puede ordenarlos según una o más propiedades de los objetos de la colección de resultados. Realm solo garantiza un orden consistente de los resultados si los ordena explícitamente.

Para ordenar una consulta, llame al método sorted() en la colección de resultados de la consulta.

// retrieve the set of Task objects
const tasks = realm.objects("Task");
// Sort tasks by name in ascending order
const tasksByName = tasks.sorted("name");
// Sort tasks by name in descending order
const tasksByNameDescending = tasks.sorted("name", true);
// Sort tasks by priority in descending order and then by name alphabetically
const tasksByPriorityDescendingAndName = tasks.sorted([
["priority", true],
["name", false],
]);
// Sort dogs by dog's owner's name.
let dogsByOwnersName = realm.objects("Dog").sorted("owner.name");

Tip

Ordenar por propiedades de objetos relacionados e incrustados

Para ordenar una query basada en una propiedad de un objeto incrustado o un objeto relacionado, usa notación de puntos como si fuera un objeto anidado regular.

Volver

Crear

En esta página