可以计算用户的年龄吗?

文章编号:040265

虽然kintone无法以今天作为基准日自动计算年龄,但可以以记录的更新日期或特定的日期作为基准日计算年龄。
如要计算更新记录时的年龄,使用更新时间字段;如要计算截至特定日期时的年龄,使用日期字段、日期与时间字段,通过与出生年月日相减,计算年龄。

此处以记录的更新日期作为基准日,分别介绍考虑闰年时计算年龄的方法,和不考虑闰年时计算大概年龄的简易方法。

方法1:不考虑闰年

不考虑闰年,假设1年为365天,将从出生年月日至更新时间为止的年数作为年龄进行计算。计算结果可能会大于实际年龄。

准备

在应用设置的表单中配置以下字段,分别设置字段名称和字段代码。

  • 更新时间字段
    字段名称:更新时间
    字段代码:更新时间

  • 日期字段
    字段名称:出生年月日
    字段代码:出生年月日

  • 计算字段
    字段名称:年龄
    字段代码:年龄

计算公式的设置

在计算字段中设置以下计算公式:
请将计算字段的[小数点后的显示位数]设置为“0”。

  • “年龄”字段

    内容已复制
    (更新时间-出生年月日)/ (60*60*24*365)

计算公式的说明

按1年为365天,计算更新时间与出生年月日之间相差的年数。

关于日期的值的处理及函数的详情,请参考以下页面:
日期、时间、日期与时间的计算

方法2:考虑闰年

考虑闰年,将从出生年月日至更新时间为止的年数作为年龄进行计算。

准备

在应用设置的表单中配置以下字段,分别设置字段名称和字段代码。

  • 更新时间字段
    字段名称:更新时间
    字段代码:更新时间

  • 计算字段
    字段名称:更新时间A
    字段代码:更新时间A

  • 日期字段
    字段名称:出生年月日
    字段代码:出生年月日

  • 计算字段
    字段名称:出生年月日A
    字段代码:出生年月日A

  • 计算字段
    字段名称:年龄
    字段代码:年龄

计算公式的设置

在计算字段中设置以下计算公式:

  • “更新时间A”字段

    内容已复制
    DATE_FORMAT(更新时间,"YYYYMMdd","system")
  • “出生年月日A”字段

    内容已复制
    DATE_FORMAT(出生年月日,"YYYYMMdd","system")
  • “年龄”字段

    内容已复制
    ROUNDDOWN((更新时间A-出生年月日A)/10000,0)

计算公式的说明

使用DATE_FORMAT函数,将更新时间与出生年月日转换为日期与时间格式的值,计算两者的差。
由于是以计算结果万位(含)以上的位数表示年龄,因此需用计算结果除以“10000”,然后使用ROUNDDOWN函数舍去小数点后的位数。

关于函数的详情,请参考以下页面:
[DATE_FORMAT函数]指定日期或时间的显示形式并显示
[ROUND函数、ROUNDUP函数、ROUNDDOWN函数]对数值进行四舍五入、向上舍入、向下舍入