计算db2中两个日期之间的星期日数

时间:2012-03-21 06:50:29

标签: java db2

我的代码中有两个日期...日期1和日期2。 我想计算上述日期之间的星期日数, 我正在使用IBM DB2。

提前致谢。

1 个答案:

答案 0 :(得分:0)

我不确定你的代码中的意思。

如果你有值,你试图从数据库中查找,最可持续的方法是创建一个你可以调用的函数。如果由于您的权限等原因而无法做到这一点,您可以查看下面的SQL:

WITH DATE_EXAMPLES (DATE_1, DATE_2) AS (
    VALUES ( TIMESTAMP('2012-03-04 01:01:01'),TIMESTAMP('2012-03-25 01:01:01'))
)
SELECT  DATE_EXAMPLES.*, 
    CASE WHEN DAYOFWEEK(DATE_2) < DAYOFWEEK(DATE_1) 
            THEN    ((DAYS(DATE_2) - DAYS(DATE_1)) / 7) + 1
            ELSE    ((DAYS(DATE_2) - DAYS(DATE_1)) / 7)
    END SUNDAYS_BETWEEN        
FROM DATE_EXAMPLES

*请注意:DAYOFWEEK来电将返回一个号码range of 1-7,其中1表示星期日,7表示星期六。