Oracle SQL19c中如何获取日期对应的季度

How to get the quarter corresponding to a date in Oracle SQL 19c

我认为 oracle sql 中有一个函数 extract(quarter from date) 可以获取一个季度给定的日期。然而,Oracle SQL 19c 文档 here 不再显示 quarter 的存在。

我什至试过 运行 代码 -

select extract(quarter from to_date('15/09/2021','DD/MM/YYYY')) as Q from dual;

预期结果是-

+---+
|  Q|
+---+
|  3|
+---+

相反,它给出了一个错误

ORA-00907 missing right parenthesis

虽然当 quartermonthyear 替换时它运行良好。当前在 Oracle SQL 19c 中获取 quarter 日期的方法是什么?

我将使用 sysdate 进行说明 - 您可以将其替换为 date 数据类型的任何表达式。

查询returns一个字符串(单个字符,1到4之间的数字);如果您需要 number 值,请将其包装在 to_number().

select to_char(sysdate, 'Q') as qtr from  dual;

QTR
---
3