Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

258
Vistas
Consultar MongoDB con cadena de fecha personalizada - javascript

Soy nuevo en NodeJS . Tengo una colección en MongoDB que contiene los Data que se muestran a continuación

 [{ _id: new ObjectId("6180c67a9b414de991a24c43"), cusDate: '20/11/2021 03:32 AM', cusName: 'Akila', cusEmail: 'akila@gmail.com', __v: 0 }, { _id: new ObjectId("6180c67a9bt14de991a24c43"), cusDate: '02/08/2021 08:12 AM', cusName: 'Booth', cusEmail: 'booth@gmail.com', __v: 0 }, { _id: new ObjectId("u180c67a9b414de991a24c43"), cusDate: '12/07/2020 11:38 AM', cusName: 'Sam', cusEmail: 'sam@gmail.com', __v: 0 }, { _id: new ObjectId("61y0c67a9b414de991a24c43"), cusDate: '22/01/2021 07:42 AM', cusName: 'Ram', cusEmail: 'ram@gmail.com', __v: 0 }, ]

Quiero encontrar y obtener los datos de la Collection basados en cusDate .

 fromCusDate: 01/06/2020 12:00 AM toCusDate: 01/03/2021 12:00 PM

Salida requerida:

 [ { _id: new ObjectId("u180c67a9b414de991a24c43"), cusDate: '12/07/2020 11:38 AM', cusName: 'Sam', cusEmail: 'sam@gmail.com', __v: 0 }, { _id: new ObjectId("61y0c67a9b414de991a24c43"), cusDate: '22/01/2021 07:42 AM', cusName: 'Ram', cusEmail: 'ram@gmail.com', __v: 0 }, ]

Mi cusDate estaba en el tipo de datos String. El formato de fecha de cadena era DD/MM/YYYY hh:mm A

Aquí está el código que probé,

 let getOrdersData = await collection.find({ "cusDate": { "$gte": "01/06/2020 12:00 AM", "$lt": "01/03/2021 12:00 PM" } })

Pero mi fecha estaba en String Datatype en collection . entonces no puedo obtener esos datos.

No se como conseguir esos datos. Quiero saber la consulta Mongoose para obtener estos datos.

 let getOrdersMonth = await collection.find({ "cusDate": { "$gte": "01/06/2020 12:00 AM", "$lt": "01/03/2021 12:00 PM" } })

Encontré esta respuesta. respuesta de desbordamiento de pila . Pero es una consulta mongodb. Necesito una consulta de mangosta. Busqué stackoverflow pero no puedo encontrar ninguna respuesta. Por favor, ayúdame con algunas soluciones.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Para resolver esto usando consultas de fecha en MongoDB, primero debe tener una entrada de tipo Fecha en su colección de MongoDB. Algo así como createdAt,updatedAt. Es más fácil consultar fechas usando Mongo, pero la misma lógica no funciona en cadenas, tiene que ser del tipo Fecha.

Entonces, en su modelo, puede definir otra entrada, digamos newCusDate , donde toma la cusDate y la convierte en una fecha usando new Date(cusDate) . Pero esto debe suceder al definir la colección. Y luego tiene un montón de consultas que puede usar en Fecha usando MongoDB.

 let gtDate = new Date('some date string here'); let ltDate = new Date('some date string here'); let getOrdersMonth = await collection.find({ "newCusDate": { "$gte": gtDate, "$lt": ltDate } })

Todos ellos son objetos de fecha (Tipo de datos) es muy importante.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda