如何在 SQL 中從日期提取年份

摘要: 在本教學中,您將學習如何使用各種函數在 SQL 中從日期提取年份。

給定一個 DATEDATETIME 值,您可以使用 EXTRACT() 函數從中提取年份。以下說明其語法

EXTRACT(YEAR FROM date)
Code language: SQL (Structured Query Language) (sql)

語法很簡單。日期可以是日期文字或評估為日期值的表達式。

EXTRACT() 函數返回一個數字,表示日期的年份。

以下示例顯示如何從 2018 年 7 月 22 日的日期中提取年份

SELECT EXTRACT(YEAR FROM '2018-07-22')
Code language: SQL (Structured Query Language) (sql)

結果是 2018,正如我們預期的

2018
Code language: SQL (Structured Query Language) (sql)

要取得目前的年份,請將目前的日期傳遞給 EXTRACT() 函數,如下所示

SELECT EXTRACT(YEAR FROM CURRENT_DATE)
Code language: SQL (Structured Query Language) (sql)

EXTRACT() 函數是一個 SQL 標準函數,由 MySQLOraclePostgreSQL 和 Firebird 支援。

如果您使用 SQL Server,可以使用 YEAR()DATEPART() 函數從日期中提取年份。

例如,以下語句在 SQL Server 中傳回目前年份

SELECT YEAR(CURRENT_TIMESTAMP);

SELECT DATEPART(year, CURRENT_TIMESTAMP);
Code language: SQL (Structured Query Language) (sql)

與 SQL Server 類似,MySQL 也支援 YEAR() 函數從日期傳回年份。

在 SQLite 中,您可以使用 strftime() 函數從日期取得目前年份,如下列查詢所示

SELECT strftime('%Y', CURRENT_TIMESTAMP)
Code language: SQL (Structured Query Language) (sql)

在本教學中,您已學習如何使用各種函數從日期中提取年份。

這個教學對您有幫助嗎?