间隔数据类型

间隔定义为两个日期和时间之间的差。 间隔以两种不同的方式之一表示。 一个是 年月 间隔,它以年份和整数月数表示间隔。 另一个是 日时间间隔 ,它以天、分钟和秒表示间隔。 这两种类型的间隔是不同的,不能混合,因为月份的天数可能不同。

间隔由一组字段组成。 字段之间有一个隐式排序。 例如,在逐年间隔中,年份排在第一位,然后是月份。 同样,在每日到分钟间隔内,字段按天、小时和分钟的顺序排列。 间隔类型中的第一个字段称为 前导 字段或 高序 字段。 最后一个字段称为 尾随 字段。

在所有间隔中,前导字段不受公历规则的约束。 例如,在小时到分钟间隔内,小时字段不限制为介于 0 到 23 ((包括) )之间,就像通常一样。 前导字段后面的尾随字段遵循公历的常见约束。 有关详细信息,请参阅本附录后面的 公历约束

有 13 个间隔 SQL 数据类型和 13 个间隔 C 数据类型。 每个间隔 C 数据类型都使用相同的结构(SQL_INTERVAL_STRUCT)来包含间隔数据。 (有关详细信息,请参阅下一部分 C Interval Structure.) 有关 SQL 数据类型的详细信息,请参阅 SQL 数据类型;有关 C 数据类型的详细信息,请参阅 C 数据类型

类型标识符 说明
MONTH Year-Month 两个日期之间的月数。
YEAR Year-Month 两个日期之间的年数。
YEAR_TO_MONTH Year-Month 两个日期之间的年数和月数。
DAY Day-Time 两个日期之间的天数。
HOUR Day-Time 两个日期/时间之间的小时数。
MINUTE Day-Time 两个日期/时间之间的分钟数。
SECOND Day-Time 两个日期/时间之间的秒数。
DAY_TO_HOUR Day-Time 两个日期/时间之间的天数/小时数。
DAY_TO_MINUTE Day-Time 两个日期/时间之间的天数/小时/分钟数。
DAY_TO_SECOND Day-Time 两个日期/时间之间的天/小时/分钟/秒数。
HOUR_TO_MINUTE Day-Time 两个日期/时间之间的小时/分钟数。
HOUR_TO_SECOND Day-Time 两个日期/时间之间的小时/分钟/秒数。
MINUTE_TO_SECOND Day-Time 两个日期/时间之间的分钟/秒数。

本部分包含以下主题。