发布日期: 11/15/2021

日期时间函数

JMP 使用自 1904 年 1 月 1 日以来的秒数的 macOS 标准储存数值列中的日期和时间。列具有日期值时,可以通过双击列名并从格式菜单中选择日期时间,将日期格式分配给该列。请参见数值格式选项

有关语法的详细信息,请参见《JSL Syntax Reference》中的Date and Time Functions

In Minutes、In Hours、In Days、In Weeks、In Years

从函数名称的单位转换为参数的等效秒数。参数必须为数字或数值表达式。例如,In Minutes(2) 得到 120In Years(1) 得到 31,557,600(60 秒 * 60 分钟 * 24 小时 * 365.25 天)。

Date DMY、Date MDY

接受日、月和年的数值表达式并返回相关的 JMP 日期。例如,Date DMY (20, 3, 1991)Date MDY(3, 20, 1991) 的求值结果为 2,752,272,000

Today

返回 1904 年 1 月 1 日到当前日期之间的秒数。例如,在 1991 年 3 月 20 日(星期三)的午夜,Today 函数返回 2752272000(2,752,272,000 秒),并继续计数。若您当天稍后对 Today 函数求值,结果将反映增加的秒数。

Day, Month, Year

分别返回月份中的日、月份(1 到 12 之间的数)和四位数的年份。这些函数的参数解释为 JMP 日期。例如,在 1991 年 3 月 20 日:

Day(2752272000) 返回数字 20

Month(2752272000) 返回数字 3

Year(2752272000) 返回数字 1991

Quarter

datetime 值的每年季度返回为 1-4 的整数。

Hour、Minute、Second

分别返回日期-时间值的小时、分钟和秒。这些函数的参数解释为 JMP 日期。例如,在 1991 年 3 月 20 日:

Hour(2752572649) 返回数字 11

Minute(2752572649) 返回数字 30

Second(2752572649) 返回数字 49

Day of Week、Day of Year、Week of Year、Time of Day

这些函数的参数为 JMP 日期。Day Of Week 返回 1 到 7 之间的数字,其中 1 表示星期日。Day Of Year 返回从年初算起经历的天数。Week Of Year 基于指定的规则返回 1 到 52 之间的数字。规则 1(默认)的周从周日开始计算,每年的第一个周日为第 2 周的开始,第 1 周可能不完整或者为空;规则 2 的第一个周日为第 1 周的开始,前面几天为第 0 周;规则 3 返回 ISO 周数,其中周从周一开始计算,第 1 周为包含该年四天的第一周。使用 ISO 周数,一年的前三天或后四天有可能属于前一年或后一年的周数。Time Of Day 返回 0 到 86399 之间的数字(用秒表示的当天时间)。例如,在 1991 年 3 月 20 日(星期三):

Day Of Week(2752272000) 返回数字 4

Day Of Year(2752272000) 返回数字 79

Week Of Year(2752272000) 返回数字 12

Time Of Day(2752272000) 返回数字 0

Informat

Informat 函数的参数是日期字符串。例如,Informat("03/20/1991") 返回相应的 JMP 日期值 2752272000。JMP 可以读取除 Abbrev DateLong Date 之外的所有日期格式。

Abbrev Date、Long Date、Short Date

这些日期函数的参数是 JMP 日期。它们返回作为参数的格式化表示法的字符串。例如:

Abbrev Date(2752272000) 返回 Wed, Mar 20,1991

Long Date(2752272000) 返回 Wednesday, March 20, 1991

Short Date(2752272000) 返回 3/20/91

Format

Format 函数中的第一个参数是 JMP 日期。该函数用您在第二个参数中指定的日期格式返回日期的字符串表示法,它是一个带引号的字符串。若您将该格式应用到数值列,则 JMP 自动将列的数据类型更改为字符。

您还可以为第一个参数提供列并将其他参数留空。结果为列引用的格式化值。这可以用于在禁用值标签时提取列的值标签。

MDYHMS

MDYHMS 的参数是 JMP 日期。该函数显示所有日期和时间字段,若未提供时间信息,则追加零作为时间字段。当日期列采用公式而未显示全部日期信息时,这很有用。可以使用 MDYHMS 函数查看所有可用的日期和时间信息。

Date Increment

向起始日期时间值添加 1 个或更多的间隔。例如,Date Increment(Today(), "Day", 3) 向当前日期加 3 天。Date Increment(Today(), "Year", 3) 向当前日期加 3 年。

Date Difference

返回两个日期时间值的差值。间隔参数可以为 Second、Minute、Hour、Day、Week、Month、Quarter、Year。下面介绍了定位参数:

Start

用于对间隔开始的次数计数。

Actual

用于对完整间隔计数。

Fractional

用于对小数间隔计数。

例如,以下公式返回 207.890243055556,即两个日期之间间隔的天数:

Date Difference(
	01Jan2010:00:00:00,
	27Jul2010:21:21:57,
	"Day",
	"fractional"
);

以下公式返回 207,即两个日期之间间隔的整天数:

Date Difference(
	01Jan2010:00:00:00,
	27Jul2010:21:21:57,
	"Day",
	"actual"
);

以下公式返回 9,即两个时间之间间隔的整小时数:

Date Difference(
	01Jan2010:00:00:00,
	01Jan2010:09:22:57,
	"Hour",
	"actual"
);

以下公式返回 1,即两个时间之间新的 1 小时开始的次数:

Date Difference(
	31Dec2010:23:59:59,
	01Jan2011:00:59:59,
	"Hour",
	"start"
);
需要更多信息?有问题?从 JMP 用户社区得到解答 (community.jmp.com).