前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SQL函数 YEAR

SQL函数 YEAR

作者头像
用户7741497
发布2022-08-02 13:57:36
1.1K0
发布2022-08-02 13:57:36
举报
文章被收录于专栏:hml_知识记录

SQL函数 YEAR

返回日期表达式的年份的日期函数。

大纲

代码语言:javascript
复制
YEAR(date-expression)

{fn YEAR(date-expression)}

参数

  • date-expression - 计算结果为 日期整数、ODBC 日期字符串或时间戳的表达式。此表达式可以是列名、另一个标量函数的结果或日期或时间戳字面量。

描述

YEAR 将日期整数($HOROLOG 日期)、ODBC 格式日期字符串或时间戳作为输入。 YEAR 以整数形式返回相应的年份。

日期表达式时间戳可以是数据类型 %Library.PosixTime(编码的 64 位有符号整数),也可以是数据类型 %Library.TimeStamp (yyyy-mm-dd hh:mm:ss.fff)。

年份 (yyyy) 部分应该是 00019999 范围内的四位整数。输入时前导零是可选的。前导零在输出上被抑制。两位数的年份不会扩展到四位数。

date-expression 的日期部分经过验证,并且必须包含 112 范围内的月份以及指定月份和年份的有效日期值。否则,将生成 SQLCODE -400 错误 <ILLEGAL VALUE>

如果日期表达式的时间部分存在,则对其进行验证,但可以省略。

注意:为了与 内部日期表示兼容,强烈建议将所有年份值表示为 00019999 范围内的四位整数。

TO_DATETO_CHAR SQL 函数支持“儒略日期”,可用于表示 0001 之前的年份。ObjectScript 提供了支持此类儒略日期的方法调用。

年份格式默认为四位数年份。要更改今年显示默认值,请使用带有 YEAR_OPTION 选项的 SET OPTION 命令。

可以使用以下 SQL 标量函数返回日期时间字符串的元素:YEARMONTHDAYDAYOFMONTHHOURMINUTESECOND。使用 DATEPARTDATENAME 函数可以返回相同的元素。

也可以使用 YEAR() 方法调用从 ObjectScript 调用此函数:

代码语言:javascript
复制
$SYSTEM.SQL.Functions.YEAR(date-expression)

示例

以下示例返回整数 2018

代码语言:javascript
复制
SELECT YEAR('2018-02-22 12:45:37') AS ODBCDate_Year

2018
代码语言:javascript
复制
SELECT {fn YEAR(64701)} AS HorologDate_Year

2018

以下示例返回当前年份:

代码语言:javascript
复制
SELECT YEAR(GETDATE()) AS Year_Now

2022

以下嵌入式 SQL 示例从两个函数返回当前年份。 CURRENT_DATE 函数返回数据类型 DATENOW函数返回数据类型 TIMESTAMPYEAR为两种输入数据类型返回一个四位数的年份整数:

代码语言:javascript
复制
/// d ##class(PHA.TEST.SQLFunction).Year()
ClassMethod Year()
{
    &sql(
        SELECT 
            {fn YEAR(CURRENT_DATE)},
            {fn YEAR({fn NOW()})} 
        INTO 
            :a,:b
        )
    if SQLCODE '= 0 {
        w !,"Error code ",SQLCODE 
    } else {
        w !,"CURRENT_DATE year is: ",a
        w !,"NOW year is: ",b 
    }
}
代码语言:javascript
复制
DHC-APP> d ##class(PHA.TEST.SQLFunction).Year()
 
CURRENT_DATE year is: 2022
NOW year is: 2022

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • SQL函数 YEAR
  • 大纲
  • 参数
  • 描述
  • 示例
相关产品与服务
云数据库 MySQL
腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档