Menu
CoddyTech

Zahlen vergleichen

Teil des Abschnitts Datenbanken mit MongoDB der Node.js-Journey von Coddy. Lektion 8 von 29.

Ein Filter kann einem exakten Wert entsprechen oder einen Zahlenbereich vergleichen. Verwende für den Abgleich eines Bereichs einen Vergleichsoperator im Filter des Feldes. $gte bedeutet größer als oder gleich.

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

Werte aus der Abfragezeichenfolge werden als Text übergeben. Wandle eine numerische Grenze mit Number um, bevor du sie mit gespeicherten Zahlen vergleichst. Dieses Beispiel wählt Produkte aus, deren Preis mindestens dem angeforderten Mindestwert entspricht. Das Ergebnis bleibt ein Array, auch wenn nur ein Dokument übereinstimmt. In der nächsten Lektion werden optionale Filter für die Bücherregal-Route kombiniert.

challenge icon

Aufgabe

Einfach

Gib in exercise.js Bücher zurück, deren numerisches Jahr mindestens input.from beträgt. Der Server bezieht diesen Wert aus der Abfragezeichenfolge. Gib die passenden Dokumente mithilfe der bereitgestellten Sammlung zurück.

Probiere GET /result?from=1960 aus: Dune und Kindred passen. Probiere ?from=1970 aus: Nur Kindred passt. Probiere ?from=2000 aus: Gib ein leeres Array zurück. Die Eingaben in dieser Übung sind gültige numerische Jahreszahlen.

Lass die Datenbank Jahre mit $gte vergleichen. Eine Grenze von 1965 schließt sowohl Dune als auch Kindred ein.

Probier es selbst

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

Alle Lektionen in Datenbanken mit MongoDB

Übe selbstständig: Express-Playground