在 oracle 中使用 WEEK 进行计算

Posted

技术标签:

【中文标题】在 oracle 中使用 WEEK 进行计算【英文标题】:Calculation with WEEK in oracle 【发布时间】:2015-01-05 09:20:43 【问题描述】:

我正在比较 oracle 中的两个日期,我停留在一个时间点,我必须将我的一周与当前一周进行比较。

假设今天是05-Jan-2015,这是第一周,输入日期是29_Dec-2014,我正在执行以下语句进行比较:

ld_week BETWEEN FOCUS_WEEK-4 AND FOCUS_WEEK-1 

地点:

ld_week 是从输入日期算起的一周(当年的最后一周) focus_week 是当前日期的一周(明年的第一周)

因此 (52 BETWEEN (1-4) AND (1-1)) 总是失败。

我正在使用下面的函数来计算星期。

FOCUS_WEEK := to_number(to_char(to_date(focus_day),'WW'));

请告诉我如何处理它。

【问题讨论】:

【参考方案1】:

你的问题有点含糊。我相信你想试试

        trunk(date '2014-12-29', 'd')
between
        trunk(sysdate - 4*7    , 'd') and
        trunk(sysdate - 1*7    , 'd')

使用trunc(date, 'd'),您可以获得一周的开始日期。

【讨论】:

以上是关于在 oracle 中使用 WEEK 进行计算的主要内容,如果未能解决你的问题,请参考以下文章

计算机科学和PYTHON编程导论 week1

summary of week

Week 1 # C 简单计算器

andrew ng machine learning week9 异常检测和推荐系统

--关于null在oracle数据库中是否参与计算,进行验证,

week4_day6(计算器)