【发布时间】:2013-02-27 00:02:33
【问题描述】:
我有一个名为ORDER 的表,其列cancel_date_time。我正在使用:
to_char(cancel_date_time,'YYYYMMDD HH24:MI:SS')
not between ('20120214 10:00:00')
and ('20120215 10:00:00')
检索记录。但是当cancel_date_time 是NULL 时它不会返回任何记录吗?
谁能建议检索记录的问题是什么?
【问题讨论】:
-
您似乎不知道您要达到的目标。 Null 没有值,因此在您询问如何为空值编码之前,您必须知道如果它们存在您想要做什么。此外,像这样使用 to_char 会减慢您的查询速度。请改用真实的日期时间参数。
-
@Dan:是的,我不知道这个特殊情况,请给我一些提示
-
如果您是为其他人执行此操作,并且您不确定要求,请询问该人。
-
@Dan:如果您正确理解了这个问题,我的意思是当
cancel_date_time是NULL时不返回任何记录。这意味着不介于两者之间的条件正在失效。这并不意味着如果 cancel_date_time 为 null 则带上记录 -
我不明白最后的评论。简单的问题 - 如果取消日期时间为空,您的查询是否应该返回该记录?是还是不是?