常見日期公式

  • 文檔創建者:Roxy
  • 編輯次數:10
  • 最近更新:Nikozhan 于 2025-07-08
  • 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(FORMAT(2023-06-13 00:01:27,"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
    月初
    DATE(YEAR(NOW()),MONTH(NOW()),01)若系統時間為 2011-11-11,則傳回 2011-11-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
    當前時間下再增加2個月的 日期date(year(today()),MONTH(today())+2,day(today()))若系統日期是 2011-10-11,則回傳值為 2011-12-11

    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


    附件列表


    主題: 資料開發-定時任務
    已經是第一篇
    已經是最後一篇
    • 有幫助
    • 沒幫助
    • 只是瀏覽
    • 评价文档,奖励 1 ~ 100 随机 F 豆!