sql - 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 被替换为 monthyear 时它运行良好。当前在 Oracle SQL 19c 中获取给定日期的 quarter 的方法是什么?

最佳答案

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

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

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

QTR
---
3

https://stackoverflow.com/questions/69197659/

相关文章:

snowflake-cloud-data-platform - 雪花 : How do I upda

r - 在避免循环的同时计算 "smaller"行数比其他行数

c - 在 C 程序中使用汇编函数

javascript - 在 Vue 组件中加载 HTML 文件内容

javascript - 将存储为 String 的 Array 转换为 Java String 中

vue.js - Nuxt : how can I get sourcemap files and

kotlin - 优化 for 循环以将项目添加到 map

python - 我如何拆分第二个 ", "

awk - 根据列将大文件拆分为多个文件

c++ - 声明属于所有特化的类模板成员