Menu
CoddyTech

Comparación de números

Parte de la sección Bases de datos con MongoDB del Journey de Node.js de Coddy. Lección 8 de 29.

Un filtro puede coincidir con un valor exacto o comparar un intervalo numérico. Para coincidir con un intervalo, usa un operador de comparación dentro del filtro del campo. $gte significa mayor o igual que.

const minimum = Number(input.minimum);
const list = await products.find({price: {$gte: minimum}}).toArray();

Los valores de la cadena de consulta llegan como texto. Convierte un límite numérico con Number antes de compararlo con los números almacenados. Este ejemplo selecciona los productos cuyo precio es al menos el mínimo solicitado. El resultado sigue siendo un arreglo incluso si solo coincide un documento. La siguiente lección combina filtros opcionales en la ruta de la estantería.

challenge icon

Desafío

Fácil

En exercise.js, devuelve los libros cuyo año numérico sea al menos input.from. El servidor proporciona ese valor a partir de la cadena de consulta. Devuelve los documentos coincidentes usando la colección proporcionada.

Prueba GET /result?from=1960: Dune y Kindred coinciden. Prueba ?from=1970: solo coincide Kindred. Prueba ?from=2000: devuelve un arreglo vacío. Las entradas de este ejercicio son años numéricos válidos.

Deja que la base de datos compare los años con $gte. Un límite de 1965 incluye tanto Dune como Kindred.

Pruébalo tú mismo

export async function exercise(books, input) {
    return await books.find().toArray();
}

Todas las lecciones de Bases de datos con MongoDB

Practica por tu cuenta: Playground de Express