首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Oracle日期列NULL

Oracle日期列NULL
EN

Stack Overflow用户
提问于 2011-08-02 02:58:41
回答 1查看 570关注 0票数 1

我是Oracle的新手,我遇到了一个问题。我的页面上有一个具有START_DATE和END_DATE的表单,我需要将这些值与DB中相应的StartDate和EndDate列进行比较。这些列是可以为空的,所以我出错了。有什么不同的方法来解决这个问题?使用ToDate并非易事,因为我目前正在使用一个过滤器类来构建我的查询,所以我正在寻找其他选择。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-08-02 03:02:06

这将取决于您使用哪种逻辑来处理日期。如果开始日期为null意味着“不适用”,并且end_date也是如此,那么您可以这样做:

代码语言:javascript
复制
WHERE date_I_care_about
  BETWEEN nvl(start_date,to_date('19000101','YYYYMMDD'))
      AND nvl(start_date,to_date('30000101','YYYYMMDD'))

也就是说,当您没有值时,只需为start_date和end_date插入任意大小的值。

但这取决于您特定的逻辑,即上述方法是否合适。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6903001

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档