Sybase IQ常用函数大全--时间和日期函数(3)

61 篇文章 0 订阅
48 篇文章 1 订阅

Sybase IQ常用函数大全–时间和日期函数(3)

查询索引:

  1. HOUR 函数:返回 0 到 23 之间的一个数字,该数字对应于指定日期/时间的小时部分。
  2. HOURS 函数:返回自任意开始日期和时间以来的小时数、两个指定时间之间的完整小时数,或者将指定的 integer-expression 数量的小时添加到某个时间中。
  3. MINUTE 函数:返回 0 到 59 之间的一个数字,该数字对应于指定日期/时间值的分钟部分。
  4. MINUTES 函数:返回自任意日期和时间以来的分钟数、两个指定时间之间的完整分钟数,或者将指定的 integer-expression 数量的分钟添加到某个时间中。
  5. MONTH 函数:返回 1 到 12 之间的一个数字,该数字对应于给定日期的月份。
  6. MONTHNAME 函数:返回指定日期表达式中的月份名称。
  7. MONTHS 函数:返回自任意开始日期/时间以来的月数、两个指定日期/时间之间的月数,或者将指定的 integer-expression 数量的月添加到日期/时间中。
  8. QUARTER 函数:返回一个表示所提供日期表达式中年的季度的数字。
  9. SECOND 函数:返回 0 到 59 之间的一个数字,该数字对应于给定日期/时间值的秒部分。这个与hour函数格式一致,没有详解。
  10. SECONDS 函数:返回自任意开始日期和时间以来的秒数、两个时间之间的秒数,或者向某时间添加整数数量的秒。这个与hours函数格式一致,没有详解。
  11. WEEKS 函数:返回自任意开始日期/时间以来的周数、两个指定日期/时间之间的周数,或者将指定的 integer-expression 数量的周添加到某日期/时间中。
  12. YEAR 函数:返回与给定日期/时间的年份相对应的 4 位数数字。与上面时分秒的函数类似,不多介绍,无详解。
  13. YEARS 函数:返回与给定日期/时间的年份相对应的 4 位数数字、两个指定日期/时间之间的年数,或向某日期/时间添加指定的 integer-expression 数量的年。与上面时分秒的函数类似,不多介绍,无详解。
  14. YMD 函数:返回对应于给定年、月、日的日期值。

1. HOUR 函数

返回 0 到 23 之间的一个数字,该数字对应于指定日期/时间的小时部分。

语法:
HOUR ( <datetime-expression> )
解析:
参数说明
datetime-expression日期/时间。
示例:
-- 以下语句返回值 21:
SELECT HOUR( '1998-07-09 21:12:13' ) FROM iq_dummy

2. HOURS 函数

返回自任意开始日期和时间以来的小时数、两个指定时间之间的完整小时数,或者将指定的 integer-expression 数量的小时添加到某个时间中。

语法:
  • 类似days函数,一个是与日期相关,一个是与小时相关。
-- 语法一:
HOURS ( <datetime-expression> )

-- 语法二:
HOURS ( <datetime-expression>, <datetime-expression> )

-- 语法三:
HOURS ( <datetime-expression>, <integer-expression> )
解析:
参数说明
datetime-expression日期和时间。
integer-expression要添加到 中的小时数。如果 是负数,则从日期/时间中减去相应的小时数。如果提供整数表达式,则必须将 显式转换为 datetime 数据类型。
  • 第二个语法返回从第一个日期/时间到第二个日期/时间之间的完整小时数。数值可能为负。
示例:
-- 以下语句返回值 17518758:
SELECT HOURS( '1998-07-13 06:07:12' ) FROM iq_dummy

-- 以下语句返回值 4,表示两个时间之间的差值:
SELECT HOURS( '1999-07-13 06:07:12', '1999-07-13 10:07:12' ) FROM iq_dummy

-- 以下语句返回日期时间值 1999-05-13 02:05:07.000:
SELECT HOURS( CAST( '1999-05-12 21:05:07' AS DATETIME ), 5 ) FROM iq_dummy

3. MINUTE 函数

返回 0 到 59 之间的一个数字,该数字对应于指定日期/时间值的分钟部分。

语法:
MINUTE ( <datetime-expression> )
解析:
参数说明
datetime-expression日期/时间值。
示例:
-- 以下语句返回值 22:
SELECT MINUTE( '1998-07-13 12:22:34' ) FROM iq_dummy

4. MINUTES 函数

返回自任意日期和时间以来的分钟数、两个指定时间之间的完整分钟数,或者将指定的 integer-expression 数量的分钟添加到某个时间中。

语法:
  • 类似days函数hours函数,一个是与日期相关,一个是与分钟相关。
-- 语法一:
MINUTES ( <datetime-expression> )

-- 语法二:
MINUTES ( <datetime-expression>, <datetime-expression> )

-- 语法三:
MINUTES ( <datetime-expression>, <integer-expression> )
解析:
参数说明
datetime-expression日期和时间。
integer-expression要添加到< datetime-expression. >中的分钟数。如果 是负数,则从日期/时间值中减去相应的分钟数。如果提供整数表达式,则必须将 显式转换为 datetime 数据类型
  • 第二个语法返回从第一个日期/时间到第二个日期/时间之间的完整小时数。数值可能为负。
示例:
-- 返回值 1051125487:
SELECT MINUTES( '1998-07-13 06:07:12' ) FROM iq_dummy
-- 返回值 240,表示两个时间之间的差值:
SELECT MINUTES( '1999-07-13 06:07:12',
'1999-07-13 10:07:12' ) FROM iq_dummy
-- 返回 datetime 值 1999-05-12 21:10:07.000:
SELECT MINUTES( CAST( '1999-05-12 21:05:07' AS DATETIME ), 5) FROM iq_dummy

5. MONTH 函数

返回 1 到 12 之间的一个数字,该数字对应于给定日期的月份。

语法:
MONTH ( <date-expression> )
解析:
参数说明
date-expression日期/时间值。
示例:
-- 以下语句返回值 7:
SELECT MONTH( '1998-07-13' ) FROM iq_dummy

6. MONTHNAME 函数

返回指定日期表达式中的月份名称。

语法:
MONTHNAME ( <date-expression> )
解析:
参数说明
date-expression日期/时间值。
示例:
-- 当 DATE_ORDER 选项设置为缺省值 <ymd> 时,以下语句将返回值 September。
SELECT MONTHNAME( '1998-09-05' ) FROM iq_dummy

7. MONTHS 函数

返回自任意开始日期/时间以来的月数、两个指定日期/时间之间的月数,或者将指定的 integer-expression 数量的月添加到日期/时间中。

语法:
  • 类似days函数hours函数、minutes函数,一个是与日期相关,一个是与月份相关。
-- 语法一:
MONTHS ( <datetime-expression> )

-- 语法二:
MONTHS ( <datetime-expression>, <datetime-expression> )

-- 语法三:
MONTHS ( <datetime-expression>, <integer-expression> )
解析:
参数说明
datetime-expression日期和时间。
integer-expression要添加到 中的月数。如果 是负数,则从日期/时间中减去相应的月数。如果提供整数表达式,则必须将 显式转换为 datetime 数据类型。
  • 第二个语法返回从第一个日期/时间到第二个日期/时间之间的完整小时数。数值可能为负。

  • 第一种语法返回自任意开始日期以来的月数。此数字通常用于确定两个日期/时间表达式是否在同一年的同一月中。

  • 第二种语法返回从第一个日期到第二个日期之间的月数。数值可能为负。该值是根据两个日期之间的月份的第一天的数目计算出的。会忽略小时、分钟和秒钟。

  • 第三种语法将 个月添加到给定日期中。如果新日期超出月末(如 MONTHS (‘1992-01-31’, 1)),则结果设置为该月的最后一天。如果 是负数,则从日期中减去相应的月数。会忽略小时、分钟和秒钟。

示例:
-- 以下语句返回值 23982:
SELECT MONTHS( '1998-07-13 06:07:12' ) FROM iq_dummy

-- 以下语句返回值 2,表示两个日期之间的差值:
SELECT MONTHS( '1999-07-13 06:07:12', '1999-09-13 10:07:12' ) FROM iq_dummy

-- 以下语句返回日期时间值 1999/10/12 21:05:07.000:
SELECT MONTHS( CAST( '1999-05-12 21:05:07' AS DATETIME ), 5) FROM iq_dummy

8. QUARTER 函数

返回一个表示所提供日期表达式中年的季度的数字。

语法:
QUARTER( <date-expression> )
解析:
参数说明
date-expression日期
季度期限(含起止日期)
11 月 1 日到 3 月 31 日
24 月 1 日到 6 月 30 日
37 月 1 日到 9 月 30 日
410 月 1 日到 12 月 31 日
示例:
-- 如果将 DATE_ORDER 选项设置为 <ymd> 的缺省值,则下列语句返回值 2:
SELECT QUARTER ( '1987/05/02' ) FROM iq_dummy

9、10 略

11. WEEKS 函数

返回自任意开始日期/时间以来的周数、两个指定日期/时间之间的周数,或者将指定的 integer-expression 数量的周添加到某日期/时间中。

语法:
-- 语法一:
WEEKS ( <datetime-expression> )

-- 语法二:
WEEKS ( <datetime-expression>, <datetime-expression> )

-- 语法三:
WEEKS ( <datetime-expression>, <integer-expression> )
解析:
参数说明
datetime-expression日期和时间。
integer-expression要添加到 的周数。如果 是负数,则从日期/时间值中减去相应的周数。忽略小时、分钟和秒。如果提供整数表达式,则必须将 显式转换为 DATETIME 数据类型。
  • 周是指从星期日到星期六,这与北美日历中一样。第一种语法返回的数字通常用于确定两个日期是否在同一周中。
  • 在第二个语法中,系统将根据两个日期之间的星期日的数量计算 WEEKS 的值。忽略小时、分钟和秒。此函数不受 DATE_FIRST_DAY_OF_WEEK 选项的影响。
示例:
-- 以下语句返回值 104278:
SELECT WEEKS( '1998-07-13 06:07:12' ) FROM iq_dummy

-- 以下语句返回值 9,表示两个日期之间的差值:
SELECT WEEKS( '1999-07-13 06:07:12', '1999-09-13 10:07:12' ) FROM iq_dummy

-- 以下语句返回时间戳值 1999-06-16 21:05:07.000:
SELECT WEEKS( CAST( '1999-05-12 21:05:07' AS TIMESTAMP ), 5) FROM iq_dummy

14. YMD 函数:

返回对应于给定年、月、日的日期值。

语法:
YMD ( <integer-expression1>, <integer-expression2>, <integer-expression3> )
解析:
参数说明
integer-expression1年。
integer-expression2表示月份的数字。如果月份超出 1-12 这一范围,则相应地调整年份。
integer-expression3表示日的数字。日可以是任意整数,将相应地调整日期。
示例:
-- 以下语句返回值 1998/6/12:
SELECT YMD( 1998, 06, 12 ) FROM iq_dummy

-- 如果值超出其正常范围,则相应地调整日期。例如,以下语句返回值 1993-03-01:
SELECT YMD( 1992, 15, 1 ) FROM iq_dummy

-- 以下语句返回值 1993/2/28:
SELECT YMD ( 1992, 15, 1-1 ) FROM iq_dummy

-- 以下语句返回值 1992/2/29:
SELECT YMD ( 1992, 3, 1-1 ) FROM iq_dummy
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值