DATASTAGE日期和时间函数_官方文档译文

发布时间:2024年01月02日

DATASTAGE日期和时间函数_官方文档译文

原文链接:https://www.ibm.com/docs/en/iis/11.5?topic=functions-date-time

你可以使用日期和时间函数在Transformer阶段执行关于日期和时间的各种操作。

这些函数中,用于指定日期、时间或时间戳的参数采用特定格式的字符串:

  • 对于日期,格式为 %yyyy-%mm-%dd
  • 对于时间,格式为 %hh:%nn:%ss。若扩展到包含微秒,则格式为 %hh:%nn:%ss.x,其中 x 表示秒的小数位数。
  • 对于时间戳,格式为日期格式后跟时间格式。

带有星期几的参数的函数采用字符串来指定星期几。星期以三个字母的缩写或全名指定。例如,字符串 “thu” 和 “thursday” 都是有效的。

以下是表达式编辑器中“日期与时间”类别中的一些函数。方括号表示参数是可选的。示例展示了该函数在Transformer阶段的派生字段中的使用。

CurrentDate

返回作业运行的日期。

  • 输入: 无

  • 输出: 日期 (date)

  • 示例: 使用此函数在Transformer阶段的输出数据中添加一个包含日期的新列。

CurrentDate()

CurrentTime

返回作业运行的时间。

  • 输入: 无

  • 输出: 时间 (time)

  • 示例: 使用此函数在Transformer阶段的输出数据中添加一个包含时间的新列。

CurrentTime()

CurrentTimeMS

返回作业运行的时间,包括微秒。

  • 输入: 无

  • 输出: 时间 (time)

  • 示例: 使用此函数在Transformer阶段的输出数据中添加一个包含时间的新列。必须将列元数据中的“Extended”字段设置为“Microseconds”以包含完整的时间。

CurrentTimeMS()

CurrentTimestamp

返回作业运行的日期和时间戳。

  • 输入: 无

  • 输出: 时间戳 (timestamp)

  • 示例: 使用此函数在Transformer阶段的输出数据中添加一个包含时间戳的新列。

CurrentTimestamp()

CurrentTimestampMS

返回作业运行的日期和时间戳,包括微秒。

  • 输入: 无

  • 输出: 时间戳 (timestamp)

  • 示例: 使用此函数在Transformer阶段的输出数据中添加一个包含时间戳的新列。必须将列元数据中的“Extended”字段设置为“Microseconds”以包含完整的时间戳。

CurrentTimestampMS()

DateFromDaysSince

通过将整数添加到基准日期来返回日期字符串。整数可以为负以返回早于基准日期的日期。此函数在IBM? InfoSphere? Information Server,版本11.3中已弃用。请使用DateFromDaysSince2函数。

  • 输入: number (int32), [baseline_date_string (string)]

  • 输出: 日期 (date)

  • 示例: 如果 mylink.myintcol 包含整数18250,mylink.mydatecol 包含日期1958–08–18,则以下三个函数是等效的,并返回日期2008–08–05:

DateFromDaysSince(18250, "1958-08-18")
DateFromDaysSince(mylink.myintcol, "1958-08-18")
DateFromDaysSince(mylink.myintcol, mylink.mydatecol)

如果 mylink.mynegintcol 包含整数-1,mylink.mydatecol 包含日期1958–08–18,则以下三个函数是等效的,并返回日期1958–08–17:

DateFromDaysSince(-1, "1958-08-18")
DateFromDaysSince(mylink.mynegintcol, "1958-08–18")
DateFromDaysSince(mylink.mynegintcol, mylink.mydatecol)

DateFromDaysSince2

通过将整数添加到基准日期来返回日期对象。整数可以为负以返回早于基准日期的日期。

  • 输入: number (int32), [baseline_date_object (date)]

  • 输出: 日期 (date)

  • 示例: 如果 mylink.myintcol 包含整数18250,mylink.mydatecol 包含日期1958–08–18,则以下三个函数是等效的,并返回日期2008–08–05:

DateFromDaysSince2(18250, "1958-08-18")
DateFromDaysSince2(mylink.myintcol, "1958-08–18")
DateFromDaysSince2(mylink.myintcol, mylink.mydatecol)

如果 mylink.mynegintcol 包含整数-1,mylink.mydatecol 包含日期1958–08–18,则以下三个函数是等效的,并返回日期1958–08–17:

DateFromDaysSince2(-1, "1958-08–18")
DateFromDaysSince2(mylink.mynegintcol, "1958-08–18")
DateFromDaysSince2(mylink.mynegintcol, mylink.mydatecol)

DateFromComponents

根据给定的年、月和日,返回一个日期,这些年、月和日作为三个单独的值给出。

  • 输入: years (int32), months (int32), dayofmonth (int32)

  • 输出: 日期 (date)

  • 示例: 如果 mylink.yearcol 包含值2010,mylink.monthcol 包含值12,mylink.dayofmonthcol 包含值2,则以下两个函数是等效的,并返回日期2010–12–02。

DateFromComponents(2010, 12, 2)
DateFromComponents(mylink.yearcol, mylink.monthcol, mylink.dayofmonthcol)

DateFromJulianDay

根据给定的儒略日返回日期。

  • 输入: julianday (uint32)

  • 输出: 日期 (date)

  • 示例: 如果 mylink.myjulcol 包含值2454614,则以下两个函数是等效的,并返回日期2008–05–27。

DateFromJulianDay(2454614)
DateFromJulianDay(mylink.myjulcol)

DateOffsetByComponents

返回给定的日期,应用来自给定年份偏移、月份偏移和月份日期偏移的偏移量,这三个值分别作为输入。偏移值可以是正数、零或负数。

  • 输入: basedate (date),year_offset (int32),month_offset (int32),dayofmonth_offset (int32)
  • 输出: date (date)
  • 示例:
    如果 mylink.basedate 包含 2011-08-18,而 mylink.yearos 包含值 2,mylink.monthos 包含值 0,mylink.dayofmonthosol 包含值 0,那么以下两个函数是等效的,都返回日期 2013–08–18。
DateOffsetByComponents("2011-08-18", 2, 0, 0)
DateOffsetByComponents(mylink.basedate, mylink.yearos, mylink.monthos, mylink.dayofmonthos)

如果 mylink.basedate 包含 2011-08-18,而 mylink.yearos 包含值 -2,mylink.monthos 包含值 0,mylink.dayofmonthosol 包含值 0,那么以下两个函数是等效的,都返回日期 2009–08–18。

DateOffsetByComponents("2011-08-18", -2, 0, 0)
DateOffsetByComponents(mylink.basedate, mylink.yearos, mylink.monthos, mylink.dayofmonthos)

DaysSinceFromDate

返回从源日期到给定日期的天数。在IBM InfoSphere Information Server 11.3中,此函数已被弃用,请使用DaysSinceFromDate2函数。

  • 输入: given_date (date),source_date_string (string)
  • 输出: days_since (int32)
  • 示例:
    如果 mylink.mysourcedate 包含日期 1958–08–18,而 mylink.mygivendate 包含日期 2008–08–18,那么以下两个函数是等效的,都返回整数值 18263。
DaysSinceFromDate(mylink.mygivendate, mylink.mysourcedate)
DaysSinceFromDate("2008-08-18", "1958-08-18")

DaysSinceFromDate2

返回从源日期到给定日期的天数。

  • 输入: given_date (date),source_date_object (date)
  • 输出: days_since (int32)
  • 示例:
    如果 mylink.mysourcedate 包含日期 1958–08–18,而 mylink.mygivendate 包含日期 2008–08–18,那么以下两个函数是等效的,都返回整数值 18263。
DaysSinceFromDate2(mylink.mygivendate, mylink.mysourcedate)
DaysSinceFromDate2("2008-08-18", "1958-08-18")

DaysInMonth

返回给定基准日期的月份中的天数。

  • 输入: basedate (date)
  • 输出: daysinmonth (int32)
  • 示例:
    如果 mylink.mysourcedate 包含日期 1958–08–18,那么以下两个函数是等效的,都返回整数值 31。
DaysInMonth(mylink.mysourcedate)
DaysInMonth("1958-08-18")

DaysInYear

返回给定基准日期的年份中的天数。

  • 输入: basedate (date)
  • 输出: daysinyearh (int32)
  • 示例:
    如果 mylink.mysourcedate 包含日期 2012–08–18,那么以下两个函数是等效的,都返回整数值 366。
DaysInYear(mylink.mysourcedate)
DaysInYear("2012-08-18")

如果 mylink.mysourcedate 包含日期 2011–08–18,那么以下两个函数是等效的,都返回整数值 365。

DaysInYear(mylink.mysourcedate)
DaysInYear("2011-08-18")

DateOffsetByDays

返回给定日期偏移给定天数后的日期。偏移值可以是正数、零或负数。

  • 输入: basedate (date),dayoffset (int32)
  • 输出: date (date)
  • 示例:
    如果 mylink.basedate 包含 2011-08-18,而 mylink.dayoffset 包含值 2,那么以下两个函数是等效的,都返回日期 2011–08–20。
DateOffsetByDays("2011-08-18", 2)
DateOffsetByDays(mylink.basedate, mylink.dayoffset)

如果 mylink.basedate 包含 2011-08-18,而 mylink.dayoffset 包含值 -31,那么以下两个函数是等效的,都返回日期 2011–07–18。

DateOffsetByDays("2011-08-18", -31)
DateOffsetByDays(mylink.basedate, mylink.dayoffset)

HoursFromTime

返回时间的小时部分。

  • 输入: time (time)
  • 输出: hours (int8)
  • 示例:
    如果 mylink.mytime 包含时间 22:30:00,那么以下两个函数是等效的,都返回整数值 22。
HoursFromTime(mylink.mytime)
HoursFromTime("22:30:00")

JulianDayFromDate

从给定日期返回儒略日数。

  • 输入: date (date)
  • 输出: julianday (int32)
  • 示例:
    如果 mylink.mydate 包含日期 2008–05–27,那么以下两个函数是等效的,都返回值 2454614。
JulianDayFromDate("2008–05–27")
JulianDayFromDate(mylink.mydate)

MicroSecondsFromTime

返回时间的微秒部分。

  • 输入: time (time)
  • 输出: microseconds (int32)
  • 示例:
    如果 mylink.mytime 包含时间 22:30:00.32,那么以下函数返回值 320000:
MicroSecondsFromTime(mylink.mytime)

当然,以下是使用Markdown格式的翻译:

MidnightSecondsFromTime

返回从午夜到给定时间的秒数。

  • 输入:时间(time)
  • 输出:秒数(int8)
  • 示例:如果mylink.mytime包含时间00:30:52,则以下两个函数等效,返回值为1852
    MidnightSecondsFromTime("00:30:52")
    MidnightSecondsFromTime(mylink.mytime)
    

MinutesFromTime

返回时间的分钟部分。

  • 输入:时间(time)
  • 输出:分钟(int8)
  • 示例:如果mylink.mytime包含时间22:30:52,则以下两个函数等效,返回值为30
    MinutesFromTime("22:30:52")
    MinutesFromTime(mylink.mytime)
    

MonthDayFromDate

从给定日期返回月份中的日期。

  • 输入:日期(date)
  • 输出:日期(int8)
  • 示例:如果mylink.mydate包含日期2008-08-18,则以下两个函数等效,返回值为18
    MonthDayFromDate("2008-08-18")
    MonthDayFromDate(mylink.mydate)
    

MonthFromDate

从给定日期返回月份编号。

  • 输入:日期(date)
  • 输出:月份编号(int8)
  • 示例:如果mylink.mydate包含日期2008-08-18,则以下两个函数等效,返回值为8
    MonthFromDate("2008-08-18")
    MonthFromDate(mylink.mydate)
    

NextWeekdayFromDate

返回源日期之后最接近的指定星期几的日期。星期几用全名或缩写指定。

  • 输入:源日期(date),星期几(string)
  • 输出:日期(date)
  • 示例:如果mylink.mysourcedate包含日期2008-08-18,星期四指定为Thursday,则以下两个函数等效,返回值为2008-08-21
    NextWeekdayFromDate("2008-08-18", "thursday")
    NextWeekdayFromDate(mylink.mysourcedate, "thu")
    

NthWeekdayFromDate

返回源日期之后指定周数偏移的星期几的日期。星期几用全名或缩写指定,偏移值可以为正、负或零。

  • 输入:基准日期(date),星期几(string),周偏移(int32)

  • 输出:日期(date)

  • 示例:如果mylink.mydate包含日期2009-08-18,星期四指定为thursday,偏移为1,则以下两个函数等效,返回值为2009-08-20

    NthWeekdayFromDate("2009-08-18", "thursday", 1)
    NthWeekdayFromDate(mylink.mydate, "thu", 1)
    

    返回两周前的星期四的日期。如果mylink.mydate包含日期2009-08-18,星期四指定为thursday,偏移为-2,则以下两个函数等效,返回值为2009-08-06

    NthWeekdayFromDate("2009-08-18", "thursday", -2)
    NthWeekdayFromDate(mylink.mydate, "thu", -2)
    

PreviousWeekdayFromDate

返回源日期之前最近的指定星期几的日期。星期几用全名或缩写指定。

  • 输入:源日期(date),星期几(string)
  • 输出:日期(date)
  • 示例:如果mylink.mysourcedate包含日期2008-08-18,星期四指定为thursday,则以下两个函数等效,返回值为2008-08-14
    PreviousWeekdayFromDate("2008-08-18", "thursday")
    PreviousWeekdayFromDate(mylink.mysourcedate, "thu")
    

SecondsFromTime

返回时间的秒部分。

  • 输入:时间(time)
  • 输出:秒数(dfloat)
  • 示例:如果mylink.mytime包含时间22:30:52,则以下两个函数等效,返回值为52
    SecondsFromTime("22:30:52")
    SecondsFromTime(mylink.mytime)
    

SecondsSinceFromTimestamp

返回两个时间戳字符串之间的秒数。此函数已弃用,请使用SecondsSinceFromTimestamp2函数。

  • 输入:时间戳(timestamp),基础时间戳字符串(string)
  • 输出:秒数(dfloat)
  • 示例:如果mylink.mytimestamp包含时间戳2008-08-18 22:30:52,而mylink.mytimestamp_base包含时间戳2008-08-19 22:30:52,则以下两个函数等效,返回值为-86400
    SecondsSinceFromTimestamp("2008-08-18 22:30:52", "2008-08-19 22:30:52")
    SecondsSinceFromTimestamp(mylink.mytimestamp, mylink.mytimestamp_base)
    

SecondsSinceFromTimestamp2

返回两个时间戳对象之间的秒数。

  • 输入:时间戳(timestamp),基础时间戳对象(timestamp)
  • 输出:秒数(dfloat)
  • 示例:如果mylink.mytimestamp包含时间戳2008-08-18 22:30:52,而mylink.mytimestamp_base包含时间戳2008-08-19 22:30:52,则以下两个函数等效,返回值为-86400
    SecondsSinceFromTimestamp2("2008-08-18 22:30:52", "2008-08-19 22:30:52")
    SecondsSinceFromTimestamp2(mylink.mytimestamp, mylink.mytimestamp_base)
    

TimeDate

返回系统时间和日期的格式化字符串。

  • 输入:无
  • 输出:系统时间和日期(string)
  • 示例:如果任务在2008年6月20日下午4:21运行,则以下函数返回字符串“16:

21:48 20 Jun 2008”。

TimeDate()

TimeFromComponents

从给定的小时、分钟、秒和微秒返回时间,这些值分别作为四个独立的值给出。

  • 输入:小时(int32),分钟(int32),秒(int32),微秒(int32)
  • 输出:时间(date)
  • 示例:如果mylink.hourcol包含值10mylink.mincol包含值12mylink.seccol包含值2mylink.mseccol包含0,则以下两个函数等效,返回时间10:12:02.0
    TimeFromComponents(10, 12, 2, 0)
    TimeFromComponents(mylink.hourcol, mylink.mincol, mylink.seccol, mylink.mseccol)
    

TimeFromMidnightSeconds

返回给定秒数自午夜以来的时间。

  • 输入:秒数(dfloat)
  • 输出:时间(time)
  • 示例:如果mylink.mymidnightseconds包含值240,则以下两个函数等效,返回值00:04:00
    TimeFromMidnightSeconds("240")
    TimeFromMidnightSeconds(mylink.mymidnightseconds)
    

TimeOffsetByComponents

从基准时间开始,使用小时偏移、分钟偏移和秒偏移各自作为独立的值,返回带有偏移的时间。

  • 输入:基准时间(time),小时偏移(int32),分钟偏移(int32),秒偏移(dfloat)
  • 输出:时间(time)
  • 示例:如果mylink.basetime包含14:05:29mylink.houros包含值2mylink.minos包含值0mylink.secos包含值20,则以下两个函数等效,返回时间16:05:49
    TimeOffsetByComponents("14:05:29", 2, 0, 20)
    TimeOffsetByComponents(mylink.basetime, mylink.houros, mylink.minos, mylink.secos)
    

TimeOffsetBySeconds

从基准时间开始,使用秒偏移,返回带有偏移的时间。

  • 输入:基准时间(time),秒偏移(dfloat)
  • 输出:时间(time)
  • 示例:如果mylink.basetime包含14:05:29.30mylink.secos包含值2.5,则以下两个函数等效,返回时间14:05:31.80
    TimeOffsetByComponents("14:05:29.30", 2.5)
    TimeOffsetByComponents(mylink.basetime, mylink.secos)
    

TimestampFromDateTime

从给定的日期和时间返回时间戳。

  • 输入:日期(date),时间(time)
  • 输出:时间戳(timestamp)
  • 示例:如果mylink.mydate包含日期2008-08-18,而mylink.mytime包含时间22:30:52,则以下两个函数等效,返回时间戳2008-08-18 22:30:52
    TimestampFromDateTime("2008-08-18", "22:30:52")
    TimestampFromDateTime(mylink.mydate, mylink.mytime)
    

TimestampFromSecondsSince

从基准时间戳字符串和秒数返回时间戳。此函数已弃用,请使用TimestampFromSecondsSince2函数。

  • 输入:秒数(dfloat),[基准时间戳字符串(string)]
  • 输出:时间戳(timestamp)
  • 示例:如果mylink.myseconds包含值2563,而mylink.timestamp_base包含时间戳2008-08-18 22:30:52,则以下两个函数等效,返回时间戳2008-08-18 23:13:35
    TimestampFromSecondsSince("2563", "2008-08-18 22:30:52")
    TimestampFromSecondsSince(mylink.myseconds, mylink.timestamp_base)
    

TimestampFromSecondsSince2

从基准时间戳对象和秒数返回时间戳。

  • 输入:秒数(dfloat),[基准时间戳对象(timestamp)]
  • 输出:时间戳(timestamp)
  • 示例:如果mylink.myseconds包含值2563,而mylink.timestamp_base包含时间戳2008-08-18 22:30:52,则以下两个函数等效,返回时间戳2008-08-18 23:13:35
    TimestampFromSecondsSince2("2563", "2008-08-18 22:30:52")
    TimestampFromSecondsSince2(mylink.myseconds, mylink.timestamp_base)
    

TimestampFromTimet

从给定的UNIX time_t字符串值返回时间戳。

  • 输入:timet_string(int32)
  • 输出:时间戳(timestamp)
  • 示例:如果mylink.mytimet包含值1234567890,则以下两个函数等效,返回时间戳2009-02-13 23:31:30
    TimestampFromTimet("1234567890")
    TimestampFromTimet(mylink.mytimet)
    

SecondsSinceFromTimestamp

返回两个时间戳字符串之间的秒数。在IBM InfoSphere Information Server 11.3版本中,此函数已弃用。请使用SecondsSinceFromTimestamp2函数。

  • 输入:时间戳(timestamp),基础时间戳字符串(string)
  • 输出:秒数(dfloat)
  • 示例:如果mylink.mytimestamp包含时间戳2008–08–18 22:30:52,而mylink.mytimestamp_base包含时间戳2008–08–19 22:30:52,则以下两个函数等效,返回值为-86400
    SecondsSinceFromTimestamp("2008–08–18 22:30:52", "2008–08–19 22:30:52")
    SecondsSinceFromTimestamp(mylink.mytimestamp, mylink.mytimestamp_base)

SecondsSinceFromTimestamp2

返回两个时间戳对象之间的秒数。

  • 输入:时间戳(timestamp),基础时间戳对象(timestamp)
  • 输出:秒数(dfloat)
  • 示例:如果mylink.mytimestamp包含时间戳2008–08–18 22:30:52,而mylink.mytimestamp_base包含时间戳2008–08–19 22:30:52,则以下两个函数等效,返回值为-86400
    SecondsSinceFromTimestamp2("2008–08–18 22:30:52", "2008–08–19 22:30:52")
    SecondsSinceFromTimestamp2(mylink.mytimestamp, mylink.mytimestamp_base)

TimeDate

返回系统时间和日期的格式化字符串。

  • 输入:无
  • 输出:系统时间和日期(string)
  • 示例:如果任务在2008年6月20日下午4:21运行,则以下函数返回字符串“16:21:48 20 Jun 2008”。
    TimeDate()

TimeFromComponents

从给定的小时、分钟、秒和微秒返回时间,这些值分别作为四个独立的值给出。

  • 输入:小时(int32),分钟(int32),秒(int32),微秒(int32)
  • 输出:时间(date)
  • 示例:如果mylink.hourcol包含值10mylink.mincol包含值12mylink.seccol包含值2mylink.mseccol包含0,则以下两个函数等效,返回时间10:12:02.0
    TimeFromComponents(10, 12, 2, 0)
    TimeFromComponents(mylink.hourcol, mylink.mincol, mylink.seccol, mylink.mseccol)

TimeFromMidnightSeconds

返回给定秒数自午夜以来的时间。

  • 输入:秒数(dfloat)
  • 输出:时间(time)
  • 示例:如果mylink.mymidnightseconds包含值240,则以下两个函数等效,返回值00:04:00
    TimeFromMidnightSeconds("240")
    TimeFromMidnightSeconds(mylink.mymidnightseconds)

TimeOffsetByComponents

从基准时间开始,使用小时偏移、分钟偏移和秒偏移各自作为独立的值,返回带有偏移的时间。

  • 输入:基准时间(time),小时偏移(int32),分钟偏移(int32),秒偏移(dfloat)
  • 输出:时间(time)
  • 示例:如果mylink.basetime包含14:05:29mylink.houros包含值2mylink.minos包含值0mylink.secos包含值20,则以下两个函数等效,返回时间16:05:49
    TimeOffsetByComponents("14:05:29", 2, 0, 20)
    TimeOffsetByComponents(mylink.basetime, mylink.houros, mylink.minos, mylink.secos)

TimeOffsetBySeconds

从基准时间开始,使用秒偏移,返回带有偏移的时间。

  • 输入:基准时间(time),秒偏移(dfloat)
  • 输出:时间(time)
  • 示例:如果mylink.basetime包含14:05:29.30mylink.secos包含值2.5,则以下两个函数等效,返回时间14:05:31.80
    TimeOffsetByComponents("14:05:29.30", 2.5)
    TimeOffsetByComponents(mylink.basetime, mylink.secos)

TimestampFromDateTime

从给定的日期和时间返回时间戳。

  • 输入:日期(date),时间(time)
  • 输出:时间戳(timestamp)
  • 示例:如果mylink.mydate包含日期2008–08–18,而mylink.mytime包含时间22:30:52,则以下两个函数等效,返回时间戳2008–08–18 22:30:52
    TimestampFromDateTime("2008–08–18", "22:30:52")
    TimestampFromDateTime(mylink.mydate, mylink.mytime)

TimestampFromSecondsSince

返回两个时间戳字符串之间的秒数。此函数已弃用,请使用TimestampFromSecondsSince2函数。

  • 输入:秒数(dfloat),[基准时间戳字符串(string)]
  • 输出:时间戳(timestamp)
  • 示例:如果mylink.myseconds包含值2563,而mylink.timestamp_base包含时间戳2008–08–18 22:30:52,则以下两个函数等效,返回时间戳2008–08–18 23:13:35
    TimestampFromSecondsSince("2563", "2008–08–18 22:30:52")
    TimestampFromSecondsSince(mylink.myseconds, mylink.timestamp_base)

TimestampFromSecondsSince2

返回两个时间戳对象之间的秒数。

  • 输入:秒数(dfloat),[基准时间戳对象(timestamp)]
  • 输出:时间戳(timestamp)
  • 示例:如果mylink.myseconds

包含值2563,而mylink.timestamp_base包含时间戳2008–08–18 22:30:52,则以下两个函数等效,返回时间戳2008–08–18 23:13:35

    TimestampFromSecondsSince2("2563", "2008–08–18 22:30:52")
    TimestampFromSecondsSince2(mylink.myseconds, mylink.timestamp_base)

TimestampFromTimet

从给定的UNIX time_t字符串值返回时间戳。

  • 输入:timet_string(int32)
  • 输出:时间戳(timestamp)
  • 示例:如果mylink.mytimet包含值1234567890,则以下两个函数等效,返回时间戳2009–02–13 23:31:30
    TimestampFromTimet("1234567890")
    TimestampFromTimet(mylink.mytimet)

TimestampFromTime2

从给定的时间和时间戳对象返回时间戳。时间对象中的值覆盖时间戳对象中的时间值,只使用时间戳中的日期部分。

  • 输入:时间(time),时间戳(timestamp)
  • 输出:时间戳(timestamp)
  • 示例:如果mylink.mytime包含时间12:03:22,而mylink.mytimestamp包含时间戳2008–08–18 22:30:52,则以下两个函数等效,返回时间戳2008–08–18 12:03:22
    TimestampFromTime2("12:03:22", "2008–08–18 22:30:52")
    TimestampFromTime2(mylink.mytime, mylink.mytimestamp)

TimestampOffsetByComponents

从基准时间戳开始,使用年偏移、月偏移、日偏移、小时偏移、分钟偏移和秒偏移各自作为独立的值,返回带有偏移的时间戳。秒偏移可以包括微秒。

  • 输入:基准时间戳(timestamp),年偏移(int32),月偏移(int32),日偏移(int32),小时偏移(int32),分钟偏移(int32),秒偏移(dfloat)
  • 输出:时间戳(timestamp)
  • 示例:如果mylink.basetimestamp包含2009-08-18 14:05:29,而mylink.yearos包含值0mylink.monthos包含值2mylink.dayos包含值-4mylink.houros包含值2mylink.minos包含值0mylink.secos包含值20,则以下两个函数等效,返回时间戳2009-10-14 16:05:49
    TimestampOffsetByComponents("2009-08-18 14:05:29", 0, 2, -4, 2, 0, 20)
    TimestampOffsetByComponents(mylink.basetimestamp, mylink.houros, mylink.minos, mylink.secos)

TimestampOffsetBySeconds

从基准时间戳开始,使用秒偏移,返回带有偏移的时间戳。秒偏移可以包括微秒。

  • 输入:基准时间戳(timestamp),秒偏移(dfloat)
  • 输出:时间戳(timestamp)
  • 示例:如果mylink.basetimestamp包含2009-08-18 14:05:29,而mylink.secos包含值32760,则以下两个函数等效,返回时间戳2009-08-18 23:11:29
    TimestampOffsetBySeconds("2009-08-18 14:05:29", 32760)
    TimestampOffsetBySeconds(mylink.basetimestamp, mylink.secos)

TimetFromTimestamp

从给定的时间戳返回UNIX time_t值。

  • 输入:时间戳(timestamp)
  • 输出:timet(int32)
  • 示例:如果mylink.mytimestamp包含值2009–02–13 23:31:30,则以下两个函数等效,返回值1234567890
    TimetFromTimestamp("2009–02–13 23:31:30")
    TimetFromTimestamp(mylink.mytimestamp)

WeekdayFromDate

从给定的日期返回一周的第几天。origin_day可选指定被视为一周第一天的天,并默认为星期日。

  • 输入:日期(date),[origin_day(int8)]
  • 输出:天数(int8)
  • 示例:如果mylink.mydate包含日期2008-08-18,则以下两个函数等效,返回值1
    WeekdayFromDate("2008-08-18")
    WeekdayFromDate(mylink.mydate)
如果`mylink.mydate`包含日期`2008-08-18`,而`mylink.origin_day`包含`"saturday"`,则以下两个函数等效,返回值`2`:
    WeekdayFromDate("2008-08-18", "saturday")
    WeekdayFromDate(mylink.mydate, mylink.origin_day)

YeardayFromDate

从给定的日期返回一年中的天数。

  • 输入:日期(date)
  • 输出:天数(int16)
  • 示例:如果mylink.mydate包含日期2008-08-18,则以下两个函数等效,返回值231
    YeardayFromDate("2008-08-18")
    YeardayFromDate(mylink.mydate)

YearFromDate

从给定的日期返回年份。

  • 输入:日期(date)
  • 输出:年份(int16)
  • 示例:如果mylink.mydate包含日期2008-08-18,则以下两个函数等效,返回值2008
    YearFromDate("2008-08-18")
    YearFromDate(mylink.mydate)

YearweekFromDate

从给定日期返回一年中的周数。

  • 输入:日期(date)
  • 输出:周数(int16)
  • 示例:如果mylink.mydate包含日期2008-08-18,则以下两个函数等效,返回值为33
    YearweekFromDate("2008-08-18")
    YearweekFromDate(mylink.mydate)
文章来源:https://blog.csdn.net/szial/article/details/135339401
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。