[DATE_FORMAT函数]指定日期或时间的显示形式并显示

文章编号:040501

要指定日期或时间的显示形式并显示时,使用DATE_FORMAT函数。
使用DATE_FORMAT函数,日期或时间等值将转化为指定的日期与时间格式的字符串并显示。将日期或时间与其他字符串进行合并时,也可使用DATE_FORMAT函数。

DATE_FORMAT函数的计算结果为字符串类型,因此请使用单行文本框字段,并设置自动计算,输入计算公式。

DATE_FORMAT函数的基本使用方法

DATE_FORMAT(字段代码, "日期与时间的格式", "时区")

具体的输入范例在“计算公式的示例”中介绍。

参数的详情

DATE_FORMAT函数中,指定有第1参数(字段代码)、第2参数(日期与时间的格式)、第3参数(时区)。对各参数的基本使用方法进行说明。

第1参数:字段代码

第1参数中可使用以下的字段。通过字段代码指定字段。

  • 日期与时间
    可指定从1000年1月1日0点0分(协调世界时)开始到9999年12月31日23点59分(协调世界时)之间的日期与时间。
  • 日期
  • 时间
  • 创建时间
  • 更新时间
  • 数值
  • 计算

另外,还可使用以下的运算符和函数。
+, -, *, /, ^, SUM

除了输入在字段中的日期与时间外,还可指定对日期与时间进行加减计算等的计算结果的日期。以秒为单位在计算公式中指定时间。例如,1小时指定为“3600”或“60*60*1”。

  • 显示后一天日期的示例:
    DATE_FORMAT(日期+24*60*60*1,"YYYY/MM/dd", "Etc/GMT")

第2参数:日期与时间的格式

第2参数中指定的日期与时间的格式,通过使用下表的格式说明符进行指定。各格式说明符会转换为对应的字符串。

格式说明符 说明 以2020年4月1日正午为例,进行转换后的字符串
YYYY或者yyyy 转换为公历年份。 2020
MMMM 根据编辑记录的用户所设置的显示语言,转换为相应的月份。 中文:四月
英文:April
日文:4月
MMM 根据编辑记录的用户所设置的显示语言,转换为相应月份的缩写。 中文:四月
MM 转换为有补零位的月份。 04
M 转换为无补零位的月份。 4
dd 转换为有补零位的日数。 01
d 转换为无补零位的日数。 1
a 根据编辑记录的用户所设置的显示语言,转换为“上午”或“下午”。 中文:下午
英文:PM
日文:午後
KK 0点到11点为上午,转换为12小时制的小时。有补零位。 00
K 0点到11点为上午,转换为12小时制的小时。无补零位。 0
hh 1点到12点为上午,转换为12小时制的小时。有补零位。 12
h 1点到12点为上午,转换为12小时制的小时。无补零位。 12
HH 0点到23点为1天,转换为24小时制的小时。有补零位。 12
H 0点到23点为1天,转换为24小时制的小时。无补零位。 12
kk 1点到24点为1天,转换为24小时制的小时。有补零位。 12
k 1点到24点为1天,转换为24小时制的小时。无补零位。 12
mm 转换为有补零位的分钟。 00
m 转换为无补零位的分钟。 0
ss 转换为有补零位的秒数。 00
s 转换为无补零位的秒数。 0
Z 转换为与UTC(协调世界时)的时差。格式为hhmm。 +0800
ZZ 转换为与UTC(协调世界时)的时差。格式为hh:mm。 +08:00
ZZZ 转换为时区的ID。 Asia/Shanghai

第3参数:时区

第3个参数中指定时区。
第1参数指定了日期/时间字段时,指定为“Etc/GMT”(协调世界时的时区ID)。
指定了除此以外的字段时,可选择用哪个时区显示。
例:DATE_FORMAT(日期与时间, "YYYY年M月d日", "Asia/Tokyo")

如指定了有夏令时的时区,计算结果将显示为夏令时。
例)DATE_FORMAT(日期与时间, "YYYY/MM/dd HH:mm ZZ", "America/Los_Angeles")
-协调世界时的2019-01-01 00:00将转换为 2018/12/31 16:00 - 08:00
-协调世界时的2018-08-01 00:00将转换为2018/07/31 17:00 - 07:00。

指定为“system”时,将应用cybozu.com共通管理中设置的时区(系统时区)。

计算公式的示例

以使用DATE_FORMAT 函数的计算公式进行说明。
DATE_FORMAT函数的计算结果为字符串类型,因此请在单行文本框中输入计算公式。

计算公式:DATE_FORMAT(日期, "YYYY年M月d日", "Etc/GMT")

将“日期”字段的格式变为***年***月***日。
“日期”字段的值为“2020-04-01”时,计算结果为2020年4月1日。
计算公式:DATE_FORMAT(日期与时间, "YYYY-MM-dd HH:mm", "America/Los_Angeles")

“日期与时间”字段的格式设为“YYYY-MM-dd HH:mm”。并将时区变为太平洋标准时间。
“日期与时间”字段的值为“2020-04-01 13:00”时,计算结果为2020-03-31 21:00(从日本时间转换而来)。
计算公式:姓名 & "-" & DATE_FORMAT(创建时间, "YYYYMMdd", "system")

合并“姓名”字段的字符串与记录创建时间。
“姓名”字段的值为“田中 爱美”、记录的创建时间为“2022-10-31 16:42”时,计算结果为“田中 爱美-20221031”。

参考:想将日期和字符串合并显示
计算公式:DATE_FORMAT(出生日期,"MM","Etc/GMT")

通过“出生日期”字段的值计算出生的月份。
“出生日期”字段的值为“1969-12-31”时,计算结果为“12”。
计算公式:DATE_FORMAT(申请日+(60*60*24*30), "YYYY-MM-dd", "Etc/GMT")

通过“申请日”字段的值,计算30天后的试用截止日期。
“申请”字段的值为“2021-07-01”时,计算结果为“2021-07-31”。

TIPS:UNIX时间

“UNIX时间”为从1970年1月1日上午0点(协调世界时)起至今经过的秒数。也被称为UNIX时间戳。例如,日期与时间为2016年4月1日凌晨0点(协调世界时)时,UNIX时间为“1459468800”。
也可在第1参数中指定UNIX时间。可指定从-30610224000到253402300799之间的UNIX时间。
另外,第1参数中指定了数值、计算字段时,将把该字段的值作为UNIX时间进行处理。