Oracle11g 如何根据季度比较两个日期,以确定它们是在彼此之前、相同还是在彼此之前?

Oracle11g 如何根据季度比较两个日期,以确定它们是在彼此之前、相同还是在彼此之前?,oracle11g,Oracle11g,我有两个datetimestamp类型的字段。我需要根据这些日期发生的季度对它们进行比较,并确定它们是发生在过去、同一季度还是未来的季度 2个字段:pay.check_dt和pay.done_in_dt。我想知道与pay.done\u in\u日期相比,pay.check\u dt是否发生在前一个、同一个或未来的季度 我最初想使用case语句将它们转换为_Char(fieldname,'Q-YYYY'),但后来我无法进行数学比较,因为它们是字符串 谢谢你的帮助 Craig使用TRUNC(日期)功

我有两个datetimestamp类型的字段。我需要根据这些日期发生的季度对它们进行比较,并确定它们是发生在过去、同一季度还是未来的季度

2个字段:pay.check_dt和pay.done_in_dt。我想知道与pay.done\u in\u日期相比,pay.check\u dt是否发生在前一个、同一个或未来的季度 我最初想使用case语句将它们转换为_Char(fieldname,'Q-YYYY'),但后来我无法进行数学比较,因为它们是字符串

谢谢你的帮助

Craig

使用
TRUNC(日期)
功能:

我现在没有可用的DB,但类似于:

TRUNC(pay.check_dt, 'Q') < TRUNC(pay.done_in_dt, 'Q')
TRUNC(pay.check_dt,'Q')
Oracle表中没有字段,只有列。然后,没有datetimestamp类型-有两种不同的数据类型,date和timestamp。您的列是哪种数据类型?如果你不知道,你可以运行
descripe TABLENAME
,其中
TABLENAME
是你的表名。这适用于哪一个表已经过去,但我也为“当TRUNC(pay.CHECK_DT,'Q')TRUNC(pay.done_in_date_DT,'Q')然后TRUNC(pay.CHECK_D,'Q')