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
虽然当 quarter
被 month
或 year
替换时它运行良好。当前在 Oracle SQL 19c 中获取 quarter
日期的方法是什么?
我将使用 sysdate
进行说明 - 您可以将其替换为 date
数据类型的任何表达式。
查询returns一个字符串(单个字符,1到4之间的数字);如果您需要 number
值,请将其包装在 to_number()
.
中
select to_char(sysdate, 'Q') as qtr from dual;
QTR
---
3
我认为 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
虽然当 quarter
被 month
或 year
替换时它运行良好。当前在 Oracle SQL 19c 中获取 quarter
日期的方法是什么?
我将使用 sysdate
进行说明 - 您可以将其替换为 date
数据类型的任何表达式。
查询returns一个字符串(单个字符,1到4之间的数字);如果您需要 number
值,请将其包装在 to_number()
.
select to_char(sysdate, 'Q') as qtr from dual;
QTR
---
3