摘要:在本教學中,您將學習如何在 SQL 中從日期提取月份中的日。
要從指定的日期中提取月份中的日,您可以使用 EXTRACT()
函數。以下說明其語法
EXTRACT(DAY FROM date)
Code language: SQL (Structured Query Language) (sql)
在這個語法中,您將要提取月份中的日的日期傳遞給 EXTRACT()
函數。該日期可以是任何有效的日期文字或評估為日期值的表達式。
EXTRACT()
函數會返回一個數字,表示輸入日期的月份中的日。
以下範例展示如何從 2018 年 8 月 21 日
的日期提取月份中的日
SELECT EXTRACT(MONTH FROM '2018-08-21')
Code language: SQL (Structured Query Language) (sql)
該語句產生以下輸出
21
Code language: SQL (Structured Query Language) (sql)
要取得目前日期的日,您可以在 EXTRACT()
函數中使用 CURRENT_TIMESTAMP
函數,如下所示
SELECT EXTRACT(DAY FROM CURRENT_TIMESTAMP)
Code language: SQL (Structured Query Language) (sql)
請注意,EXTRACT()
函數是 MySQL、Oracle 和 PostgreSQL 支援的 SQL 標準函數。
SQL Server 不支援 EXTRACT()
函數。如果您使用 SQL Server,則可以使用 DAY()
或 DATEPART()
函數來從日期中提取月份中的日。
例如,以下兩個語句都會在 SQL Server 中返回目前日期的日
SELECT DAY(CURRENT_TIMESTAMP);
SELECT DATEPART(DAY, CURRENT_TIMESTAMP);
Code language: SQL (Structured Query Language) (sql)
除了提供 EXTRACT()
函數外,MySQL 還支援 DAY()
函數,以從日期傳回月份中的日。
SQLite 不支援 EXTRACT()
、DAY()
或 DATEPART()
函數。要從日期中提取月份,您可以使用 strftime()
函數,如下所示
SELECT strftime('%d', CURRENT_TIMESTAMP)
Code language: SQL (Structured Query Language) (sql)
在本教學中,您學習了如何使用各種函數來從 SQL 中的日期中提取月份中的日。
這個教學對您有幫助嗎?