Syntax

從日期到季度的 Teradata SQL 語法

  • December 22, 2016

我需要 Teradata SQL 語法從日期中提取季度:

**日期:**(YYYY-MM-DD)
2015-09-12
2015-05-22
2014-12-15

下面給出了預期的輸出:

2015 年第三季度
2015 年第二季度
2014 年第四季度

我嘗試過的查詢(為便於閱讀而包裝):

SELECT DATE, ((CAST(EXTRACT(MONTH FROM DATE) AS BYTEINT)-1)/3)+1 
   || 'Q' || substring(DATE,3,2) quarter

錯誤:

缺少參數

Teradata 從 TD14 開始支持 Oracle 的TO_CHAR語法:

TO_CHAR(date, 'q"Q"yy')
sel curr_payment_quarter, 
   ((CAST(EXTRACT(MONTH FROM curr_payment_DATE) AS BYTEINT)-1)/3)+1 
   || 'Q' || substring(curr_payment_quarter,3,2)  as quarter,
   curr_payment_DATE
from PAYMENT_DETAILS

需要明確的是,Teradata 支持sel作為select

引用自:https://dba.stackexchange.com/questions/118917