No tienes acceso a esta clase

¬°Contin√ļa aprendiendo! √önete y comienza a potenciar tu carrera

Ejemplos de $gt, $gte, $lt, $lte

20/30
Recursos

Aportes 6

Preguntas 0

Ordenar por:

¬ŅQuieres ver m√°s aportes, preguntas y respuestas de la comunidad?

findAll(params?: FilterProductDto) {
    if (params) {
      const filters: FilterQuery<Product> = {};
      const { minPrice, maxPrice } = params;
      if (minPrice && maxPrice) {
        filters.price = { $gte: minPrice, $lte: maxPrice };
      }
      return this.productModel
        .find(filters)
    }
    return this.productModel.find();
  }

Dejo el ej de una consulta en JS, en la cual traemos los productos que cumplan con el rango de precio indicado en una query por un cliente.

conteo:

use("sample_training")
db.trips.find({
  tripduration: {
    $lte: 100
  },
  usertype: {
    $eq: "Subscriber"
  }
}).count()

documentos:

use("sample_training")
db.trips.find({
  tripduration: {
    $lte: 100
  },
  usertype: {
    $eq: "Subscriber"
  }
})
Este es mi aporte. ```js // Cambia el tipo de usuario a 'Costumer' de todas los documentos que tripduration mayores a 2000 use("sample_training") db.trips.updateMany( // query {tripduration: {$gt: 2000}}, // update with operations {$set: {usertype: "Costumer"}} ) // Muestra todos los documentos con tripduration mayor a 2000 use("sample_training") db.trips.find({ tripduration: {$gt: 2000} }) // Cambia el tipo de usuario a 'Subscriber' de todas los documentos que tripduration mayores o iguales a 2600 use("sample_training") db.trips.updateMany( // query {tripduration: {$gte: 2600}}, // update with operations {$set: {usertype: "Subscriber"}} ) // Muestra todos los documentos con tripduration mayor o igual a 2600 use("sample_training") db.trips.find({ tripduration: {$gte: 2600} }) ``` ```js // Resta 10 a todas las coordenadas de inicio de los documentos con tripduration menor a 3000 y usertype igual a "Costumer" use("sample_training") db.trips.updateMany( // query {$and: [{tripduration: {$lt: 3000}}, {usertype: "Costumer"}]}, // update with operations {$inc: { "start station location.coordinates.0": -10, "start station location.coordinates.1": -10 }} ) // Muestra todos los documentos con tripduration menor a 3000 use("sample_training") db.trips.find( {$and: [{tripduration: {$lt: 3000}}, {usertype: "Costumer"}]} ) // Elimina el campo 'start station location' con tripduration menores a 3000 y con usertype igual a 'Costumer' (solo porque puedo :v) use("sample_training") db.trips.updateMany( // query {$and: [{tripduration: {$lt: 3000}}, {usertype: "Costumer"}]}, // update with operations {$unset: { "start station location": 1 }} ) use("sample_training") db.trips.find( {$and: [{tripduration: {$lt: 3000}}, {usertype: "Costumer"}]} ) // Agrega el campo 'start station location' con tripduration menores a 3000 y con usertype igual a 'Costumer' (ya me arrepentí :'v) use("sample_training") db.trips.updateMany( // query {$and: [{tripduration: {$lt: 3000}}, {usertype: "Costumer"}]}, // update with operations {$set: { "start station location": { type: "Point", coordinates: [ -73.98990025, 40.71427487 ] } }} ) use("sample_training") db.trips.find( {$and: [{tripduration: {$lt: 3000}}, {usertype: "Costumer"}]} ) // Suma 10 a todas las coordenadas de fin de los documentos con tripduration menor o igual a 2000 y usertype igual a "Subscriber" use("sample_training") db.trips.updateMany( // query {$and: [{tripduration: {$lte: 2000}}, {usertype: "Subscriber"}]}, // update with operations {$inc: { "start station location.coordinates.0": 10, "start station location.coordinates.1": 10 }} ) // Muestra todos los documentos con tripduration menor o igual a 2000 use("sample_training") db.trips.find( {$and: [{tripduration: {$lte: 2000}}, {usertype: "Subscriber"}]} ) ```
Mi aporte: dataset: ```js use("football"); db.scorers.insertMany([ { jugador: "Lionel Messi", equipo: "Inter Miami", goles: 25, torneo: "MLS", temporada: "2023-2024" }, { jugador: "Robert Lewandowski", equipo: "Barcelona", goles: 27, torneo: "La Liga", temporada: "2023-2024" }, { jugador: "Cristiano Ronaldo", equipo: "Al Nassar", goles: 31, torneo: "Liga Arabe", temporada: "2023-2024" }, { jugador: "Erling Haaland", equipo: "Manchester City", goles: 36, torneo: "Premier League", temporada: "2023-2024" }, { jugador: "Kylian Mbappé", equipo: "PSG", goles: 29, torneo: "La Liga", temporada: "2023-2024" }, { jugador: "Neymar Jr", equipo: "Al Hilal", goles: 23, torneo: "Liga Arabe", temporada: "2023-2024" }, { jugador: "Mohamed Salah", equipo: "Liverpool", goles: 28, torneo: "Premier League", temporada: "2023-2024" }, { jugador: "Radamel Falcao", equipo: "Rayo Vallecano", goles: 18, torneo: "La Liga", temporada: "2023-2024" }, { jugador: "Harry Kane", equipo: "Bayern Munich", goles: 26, torneo: "Bundesliga", temporada: "2023-2024" }, ]) ```script: ```js // jugadores con goles mayor a 25 db.scorers.find({"goles": {$gt: 25}}) // jugadores con goles mayor o igual a 28 db.scorers.find({"goles": {$gt: 28}}) // jugadores con goles mayor o igual a 15 y menor o igual a 22 db.scorers.find({"goles": {$gte: 15, $lte: 22}}) ```
use("platzi_store")
/*
Actualiza todos los documentos donde el sensor no es igual a A001 y date es mayor o igual a 2022-01-02. 
Crea un nuevo campo processed con valor true y agrega el valor 5 al array readings.
*/
db.iot.updateMany(
  // query
  {
    sensor: { $ne: "A001" },
    date: { $gte: "2022-01-02" }
  },
  // update
  {
    $set: { processed: true },
    $push: { readings: 5 }
  }
)