MongoDB $ CurrentDate Operator

MongoDB $ CurrentDate Operator
La fecha y la hora son los activos más valiosos para cada ser vivo en la era actual. Si no cumple con sus plazos en una fecha y hora específicas, puede fallar en muchas situaciones en su vida, ya sea una tarea importante, un proyecto grande o un vuelo internacional para atrapar. Por lo tanto, es muy necesario hacer frente a sus prioridades con la gestión equilibrada de la fecha y el tiempo. Solo así, el entorno MongoDB presentó operadores tan útiles para administrar automáticamente la fecha y la hora para cualquier sistema. Uno de esos operadores es el operador "CurrentDate" que se especifica para obtener la fecha y hora actuales en sus campos de recolección. En este artículo, podrá aprender sobre cómo evitar la actualización manual de la fecha a través del operador "CurrentDate" de MongoDB.

Crea la colección de bases de datos

Para discutir el uso del operador "$ CurrentDate" en MongoDB, echaremos un vistazo a algunos ejemplos prácticos. Antes de eso, debe tener una configuración de MongoDB adecuada al final. Después de configurarlo, cree una nueva base de datos de "prueba" en su sistema. Los esquemas de MongoDB trabajan solo en colecciones con registros de formato de documentos. Por lo tanto, finalmente creamos una colección simple de "tiempo" en la base de datos de "prueba" para usar en los ejemplos proporcionados. El método createCollection () de MongoDB se usa aquí con la palabra clave "DB" para este propósito. La colección llamada "Time" finalmente se crea según la salida "OK: 1".

Prueba> DB.CreateCollection ("Tiempo")

Al probar la consulta del método "Find" para mostrar los registros de la colección "Tiempo" en la interfaz de línea de comandos de MongoDB, lo tenemos vacío ya que aún no agregamos ningún registro.

Prueba> DB.Tiempo.encontrar()

Agregar registros a la colección MongoDB

Por lo tanto, ya es hora de agregar algunos campos de datos en la recopilación de "tiempo" de la base de datos de "prueba". Estos registros deben contener al menos un campo que se utilice para mantener una "fecha" actual. Por lo tanto, la función InsertMany del "MongoDB" se ejecuta para agregar un total de 3 registros en la colección "Tiempo" de la base de datos "Prueba". A través de este proceso, el shell de línea de comandos MongoDB se usa para la ejecución de la consulta "DB" con el nombre de una colección que es "prueba". Cada uno de los registros contiene tres campos, mientras que el último campo, el "DateTime", para mantener la fecha actual. Agregamos una marca de tiempo ficticia para ejecutar la consulta. Al ejecutar esta consulta en el shell MongoDB, recibimos el mensaje de reconocimiento que se muestra en la siguiente foto adjunta:

Prueba> DB.Tiempo.insertMany ([id: 1, país: "América", DT: Timestamp (166471552, 3),
... id: 2, país: "China", DT: TimeStamp (144471552, 3),
... id: 3, país: "Inglaterra", DT: TimeStamp (1433471452, 3)])

Para ver adecuadamente los registros adicionales para la colección particular "Time" en MongoDB, debe usar la consulta "Buscar" de la misma manera que nosotros mientras creamos una colección. La foto de salida para la siguiente consulta enumerada muestra tres registros separados, cada uno con los mismos campos de nombre:

Prueba> DB.Tiempo.encontrar()

Ejemplo 1: Establezca la fecha actual para un solo registro

Ahora que hemos terminado con la adición de algunos registros en la colección de "tiempo" de la base de datos, modificamos el campo "DT" para convertir su valor en la fecha actual. Por lo tanto, la función UpdateOne () del MongoDB se descarta en la instrucción de shell "DB" de MongoDB. Asegúrese de usar el nombre correcto para que se modifique una colección. Esta consulta comienza con el campo de identificación como "ID" para que se actualice un registro. Junto con eso, el operador $ CurrentDate se elige para establecer el campo "DT" en "verdadero" estableciendo la fecha actual. Al ejecutar esta instrucción, obtenemos el reconocimiento "verdadero" y el recuento de modificaciones como "1".

Prueba> DB.Tiempo.updateOne (id: 1, $ currentDate: dt: true)

Ahora que el campo "DT" desde el primer registro de la colección "Time" se actualiza a través del operador "$ CurrentDate", observamos su versión actualizada en el shell de MongoDB. Por lo tanto, después de mencionar el "ID: 1" en la consulta de funciones "Buscar", obtenemos el registro modificado en nuestra pantalla de shell. El valor del campo "DT" ahora se establece en la fecha actual.

Prueba> DB.Tiempo.encontrar (id: 1)

Ejemplo 2: Establezca la fecha en la marca de tiempo para un registro único

Ahora, avanzamos hacia la ilustración para convertir el valor simple del campo de fecha actual a su marca de tiempo específica relacionada de la manera más simple. Para esto, debemos asegurarnos de que el registro dentro del campo relacionado con la fecha debe contener un valor de fecha que tenga el formato estándar de la fecha. La salida del ejemplo anterior muestra que el campo "DT" tiene un formato de fecha de fecha estándar. En este caso, usamos la función UpdateOne () para modificar el campo "DT" de una colección "tiempo". La consulta comienza con la palabra clave "DB" en MongoDB seguido del producto DOT con la colección "Time" y la función UpdateOne (). El tipo para el campo "DT" se establece en el formato BSON "Timestamp". Se refleja una actualización.

Prueba> DB.Tiempo.updateOne (id: 1, $ currentDate: dt: $ type: "timestamp")

Después de encontrar los tres registros de la colección "Tiempo" utilizando la función "Find" en la consulta "DB", obtenemos el primer registro formateado a su formato de marca de tiempo original, igual que los otros registros.

Prueba> DB.Tiempo.encontrar()

Ejemplo 3: marca de tiempo a la fecha actual en múltiples registros

La salida de ejemplo anterior ilustra que ahora tenemos el valor de campo "DT" en el formato de tipo "Timestamp" de una fecha para los tres registros de la colección. Necesitamos echar un vistazo a una forma de convertir todos los formatos de tipo de "marca de tiempo" a un formato de fecha actual estándar de una vez para todos los registros. Aquí se utiliza el método de "actualización" de MongoDB. El operador "$ CurrentDate" se aplica al campo "DT" configurando su valor en "verdadero" para todos los registros "". Esta operación es exitosa a medida que muestra la salida:

Prueba> DB.Tiempo.UpdateMany (, $ currentDate: dt: true)

Después de ejecutar las instrucciones de búsqueda, los tres registros de la colección "tiempo" que se muestra en la imagen muestra que la marca de tiempo está formateada para formato de fecha estándar.

Prueba> DB.Tiempo.encontrar()

Conclusión

Después de prestar atención a esta guía, podrá aprender rápidamente sobre los conceptos básicos de usar el operador "CurrentDate" en MongoDB. Las ilustraciones proporcionadas demuestran el uso del operador "$ CurrentDate" para establecer cualquier valor de campo en la fecha actual y formatear la fecha actual en su marca de tiempo. Los ejemplos contienen la configuración del operador "$ CurrentDate" para registros individuales, así como para múltiples registros.