第113章 SQL函数 QUARTER
日期函数,它将一年中的季度作为日期表达式的整数返回。
大纲
{fn QUARTER(date-expression)}
参数
-
date-expression- 表达式,它是列的名称、另一个标量函数的结果,或者是日期或时间戳文字。
描述
QUARTER 返回一个从 1 到 4 的整数。季度是针对 日期整数、ZTIMESTAMP` 值、ODBC 格式日期字符串或时间戳计算的。
日期表达式时间戳可以是数据类型 %Library.PosixTime(编码的 64 位有符号整数),也可以是数据类型 %Library.TimeStamp (yyyy-mm-dd hh:mm:ss.fff)。
四个季度的时间段如下:
| Quarter | Period (inclusive) |
|---|---|
| 1 | January 1 to March 31 (90 or 91 days) |
| 2 | April 1 to June 30 (91 days) |
| 3 | July 1 to September 30 (92 days) |
| 4 | October 1 to December 31 (92 days) |
QUARTER 基于日期时间字符串的月份部分。但是,所有日期表达式都经过验证,并且必须包含 1 到 12 范围内的月份以及指定月份和年份的有效日期值。否则,将生成 SQLCODE -400 错误 <ILLEGAL VALUE>。 date-expression 的时间部分可以省略,但如果存在则必须有效。
使用 DATEPART 或 DATENAME 函数可以返回相同的季度信息。可以使用 DATEADD 或 TIMESTAMPADD 函数将日期增加指定的季度数。
也可以使用 QUARTER() 方法调用从 ObjectScript 调用此函数:
$SYSTEM.SQL.Functions.QUARTER(date-expression)
示例
以下示例均返回数字 1,因为日期(2 月 22 日)位于该年的第一季度:
SELECT {fn QUARTER('2018-02-22')} AS ODBCDateQ
1
SELECT {fn QUARTER(64701)} AS HorologDateQ
1
以下示例均返回当前季度:
SELECT {fn QUARTER({fn NOW()})} AS Q_Now,
{fn QUARTER(CURRENT_DATE)} AS Q_CurrD,
{fn QUARTER(CURRENT_TIMESTAMP)} AS Q_CurrTstamp,
{fn QUARTER($ZTIMESTAMP)} AS Q_ZTstamp,
{fn QUARTER($HOROLOG)} AS Q_Horolog
1







网友评论