2017-06-27 25 views
1

我有2個日期時間戳類型的字段。我需要根據這些日期發生的季度進行比較,並確定是否發生過去,相同或未來季度。如何比較兩個日期以獲取它們是基於季度之前,相同還是相互超前?

2字段:pay.check_dt和pay.done_in_dt。我想知道pay.check_dt是否與pay.done_in_date 之前,相同或未來的季度發生。我原本以爲使用case語句將它們轉換爲to_Char(fieldname,'Q-YYYY'),但是然後我不能進行數學比較,因爲他們是字符串。

感謝您的幫助!

克雷格

+0

有在Oracle表中沒有的字段,只有列。然後,沒有* datetimestamp *類型 - 有兩種不同的數據類型,* date *和* timestamp *。哪些數據類型是你的列?如果你不知道,你可以運行'TABLENAME',其中'TABLENAME'是你桌子的名字。 – mathguy

回答

2

使用TRUNC(date)功能:documentation

我有沒有可用的數據庫了,但這樣的:

TRUNC(pay.check_dt, 'Q') < TRUNC(pay.done_in_dt, 'Q') 
+0

這適用於哪一個過去,但我添加了幾個位以後'以及TRUNC(pay.CHECK_DT,'Q')<> TRUNC(pay.done_in_date_DT,'Q') 然後案例時TRUNC (pay.CHECK_D,'Q')

相關問題