历史版本5 :常见日期公式 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

在对日期型数据进行操作时,经常会遇到要获取当前日期、获取当前时间、获取日期的年月日等等操作。

在 FineDataLink 中可以在新增计算列中实现。

注:其中的日期字段需要从函数编辑框左侧的字段中选择,不能手动输入。

2. 获取指定日期时间编辑

实现内容
公式结果
获取当前时间
获取当前日期(年月日)today()若系统日期是 2011 年 11 月 11 号,则返回值为 2011-11-11
获取当前时间(时分秒)now()若单元格格式为常规,系统日期是 2012 年 06 月 20 号,返回的值 2012-06-20 14:55:57
获取日期的年、月、日
获取年份year("2011-11-11")返回值为 2011
获取月份month("2011-11-11")返回值为 11
获取日期day("2011-11-11")返回值为 11
年月日时分秒 获取年月日TODATE(LEFT(2023-06-13 00:01:27,10))

注:时间字段需要为文本类型格式。

返回值为 2023-06-13 00:00:00

TODATE(FORMAT(2023-06-13 00:01:27,10,"yyyy-MM-dd")) 

注:时间字段需要为数值或者是日期类型格式

返回值为 2023-06-13 00:00:00

获取某年/季度/月/周的第几天
昨天
NOW()-1若系统时间为 2021-11-09 11:43:53,则返回 2021-11-08 11:43:53
年初第一天DATE(YEAR(NOW()),01,01)若系统时间为 2011-11-11,则返回 2011-01-01
距今已过多少天DATEDIF(date(year(日期),month(日期),1),today(),"D")若日期为2021-10-10,系统时间为2021-11-09,则返回 39
当年第几周week(today())
若日期为2021-10-10,则返回 41
获取相对于当前月份的某时间
当月MONTH(today())若系统日期是 2011-11-11,则返回值为 11
上上月date(year(today()),MONTH(today())-2,day(today()))若系统日期是 2011-11-11,则返回值为 2011-09-11
上月date(year(today()),MONTH(today())-1,day(today()))若系统日期是 2011-11-11,则返回值为 2011-10-11
去年同期上月date(year(today())-1,MONTH(today())-1,day(today()))若系统日期是 2011-11-11,则返回值为 2010-10-11
当月月末

DATE(YEAR(日期),MONTH(日期)+1,1-1)

若系统日期是 2011-11-11,则返回值为 2011-11-30

3. 数据格式转化编辑

实现内容
公式结果
数据类型转化

「文本型」转化成「日期型

todate("2011/11/11")若系统日期是 2011 年 11 月 11 号,则返回值为 2011-11-11 00:00:00
「文本型」转化成「日期型」TODATE("Wed1/15/07","EEEMM/dd/yy")将 Wed1/15/07 格式数据转化为 日期格式 2007-01-17 00:00:00
「文本型」转化成「日期型」TODATE("2021/02/07Wed","yyyy/MM/ddEEE")将2021/02/07Wed 格式数据转化为 日期格式 2021-02-03 00:00:00

「文本型」转化成「日期型」

年月日文本类型转化为日期类型

TODATE("20200522","yyyyMMdd")将 20200522 格式数据转化为 日期格式 2020-05-22 00:00:00

「文本型」转化成「日期型」

年月文本类型转化为日期类型

TODATE("202005","yyyyMM")将 202005 格式数据转化为 日期格式 2020-05-01 00:00:00
「数值型」转化为日期型」TODATE(1621221876057)

时间型(原字段为 13 位时间戳,精确到毫秒级)

1621221876057 数据转化为 日期格式 2021-05-17 11:24:36

TODATE(1621221876*1000)

时间型(原字段需 10 位时间戳,精确到秒级),1秒=1000毫

1621221876 数据转化为2021-05-17 11:24:36

年月日「文本型」转化为「年月」「文本型」FORMAT(TODATE("2020-02-02"),"yyyyMM")

2020-02-02数据转化为202002

注:若2020-02-02为日期类型,则不需要todate函数,直接FORMAT("2020-02-02","yyyyMM")

日期型」转换为「数值型」DATETONUMBER("2021-05-17")

(原字段为 13 位时间戳,精确到毫秒级

将2021-05-17 数据转化为数值格式 1,621,180,800,000

(原字段为 13 位时间戳,精确到毫秒级)转换成「文本型」format(todate(1621221876057),"yyyy-MM-ddEEE")将 162122187605 转化为 2021-05-17Mon

将时间型数据转化成其他格式的日期形式

format() 

format("2/15/2011","dd/MM/yyyy")

返回值为 15/02/2011

将年、月、日分多个字段保存,需要将多个字段处理成一个日期字段DATE(2020,02,22)

三个字段

年——2020

月份——02

日——22

转化成日期型 2020-02-22 00:00:00