当前位置: 首页 > 编程笔记 >

MongoDB如何将出生日期记录转换为年龄

龙佐
2023-03-14
本文向大家介绍MongoDB如何将出生日期记录转换为年龄,包括了MongoDB如何将出生日期记录转换为年龄的使用技巧和注意事项,需要的朋友参考一下

让我们创建一个包含文档的集合-

> db.demo754.insertOne({"DateOfBirth":new Date("2000-05-03")});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5eae9b2da930c785c834e56f")
}
> db.demo754.insertOne({"DateOfBirth":new Date("2010-01-21")});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5eae9b34a930c785c834e570")
}
> db.demo754.insertOne({"DateOfBirth":new Date("2018-05-03")});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5eae9b3da930c785c834e571")
}

在find()方法的帮助下显示集合中的所有文档-

> db.demo754.find();

这将产生以下输出-

{ "_id" : ObjectId("5eae9b2da930c785c834e56f"), "DateOfBirth" : ISODate("2000-05-03T00:00:00Z") }
{ "_id" : ObjectId("5eae9b34a930c785c834e570"), "DateOfBirth" : ISODate("2010-01-21T00:00:00Z") }
{ "_id" : ObjectId("5eae9b3da930c785c834e571"), "DateOfBirth" : ISODate("2018-05-03T00:00:00Z") }

以下是将出生日期转换为年龄的查询-

> db.demo754.aggregate( [ {
...    $project: {
...       date:"$DateOfBirth",
...          StudentAge: {
...             $divide: [{$subtract: [ new Date(), "$DateOfBirth" ] },
...             (365 * 24*60*60*1000)]
...          }
...       }
... } ] )

这将产生以下输出-

{ "_id" : ObjectId("5eae9b2da930c785c834e56f"), "date" : ISODate("2000-05-03T00:00:00Z"), "StudentAge" : 20.014896543093606 }
{ "_id" : ObjectId("5eae9b34a930c785c834e570"), "date" : ISODate("2010-01-21T00:00:00Z"), "StudentAge" : 10.288869145833333 }
{ "_id" : ObjectId("5eae9b3da930c785c834e571"), "date" : ISODate("2018-05-03T00:00:00Z"), "StudentAge" : 2.003937638984018 }

 类似资料:
  • 当我没有发现任何关于将年龄转换为出生日期的内容时,我感到惊讶。关于将出生日期转换为年龄,有很多答案,但并非相反。 我有两位数(我能够将它们转换为任何数据类型,甚至转换为DateTime.date(python-格式))。如何将它们转换为完整的SQL日期。它必须current_date年龄(日期和月份对我来说不重要)。最好通过数据库而不是python来完成此操作。 DDL: p、 美国相关问题在My

  • 问题内容: 这似乎很简单,但我找不到答案。我正在尝试将以下日期格式的出生日期列转换为Spark Dataframe API中的日期格式,然后计算相应的年龄。我可能还需要系统日期。我发现一些Java库可能有用,但在将其与DataFrame API结合使用时仍然遇到一些困难。 23-AUG-67 28-FEB-66 09-APR-59 2015年9月10日编辑 :我刚刚发现Spark 1.5.0添加了

  • 问题内容: 我在mySQL 5.1中有一个数据类型的日期列。如何将其转换为DATE? 这是我到目前为止所拥有的- 得到这个 错误-#1064-您的SQL语法有错误;查看与您的MySQL服务器版本相对应的手册以获取正确的语法,以在’FROM 7 FOR 4附近使用) 请帮忙。 问题答案: 您可以使用MySQL的功能 尽管我怀疑您使用Unix时间戳会更轻松

  • 问题内容: 我表中的日期存储为十进制年份。一个示例翻译为。 我想将十进制年份转换为Oracle的日期格式。 我找到了在Excel中完成此操作的人:十进制的年初至今公式? 但是,我不太清楚如何将逻辑转换为Oracle PL / SQL。 问题答案: 如果您假设小数部分是根据给 定年份中的天数 (即365或366,取决于是否是leap年)来计算的,则可以执行以下操作:

  • 查询:{“日期”:{“$GTE”:“2021-07-22T03:00:00”,“$LTE”:“2021-07-23T03:00:00”},“isdeleted”:false},字段:{},排序:{} 将字符串转换为数据格式,如下所示,我只得到时间戳 DateFormat originalFormatData=new SimpleDateFormat(“yyyy-mm-dd't'hh:mm:ss”,

  • 问题内容: 假设您网站的用户输入了日期范围。 您需要将此日期发送到服务器进行某些处理,但是服务器希望所有日期和时间都采用UTC。 现在,假设用户位于阿拉斯加,夏威夷或斐济。由于它们所处的时区与UTC完全不同,因此需要将日期范围转换为以下形式: 使用JavaScript Date对象,您如何将第一个“本地化”日期范围转换为服务器可以理解的范围? 问题答案: 该方法返回简化的扩展ISO格式(ISO86