DATASTAGE日期和时间函数_官方文档译文
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
包含值10
,mylink.mincol
包含值12
,mylink.seccol
包含值2
,mylink.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:29
,mylink.houros
包含值2
,mylink.minos
包含值0
,mylink.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.30
,mylink.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
包含值10
,mylink.mincol
包含值12
,mylink.seccol
包含值2
,mylink.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:29
,mylink.houros
包含值2
,mylink.minos
包含值0
,mylink.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.30
,mylink.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
包含值0
,mylink.monthos
包含值2
,mylink.dayos
包含值-4
,mylink.houros
包含值2
,mylink.minos
包含值0
,mylink.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)
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!