如何在oracle中传递中间子句中的空值?

如何在oracle中传递中间子句中的空值?,oracle,oracle11g,Oracle,Oracle11g,如何在oracle中传递中间子句中的空值?如何在oracle中传递中间子句中的空值?如何在oracle中传递中间子句中的空值?如何在oracle中传递中间子句中的空值?如何在oracle中传递中间子句中的空值?如何传递中间子句中的空值oracle中BETWEEN子句中的空值?使用COALESCE()。或者,只需使用和和或中断逻辑即可: (ap.account_payment_dat >= to_date(#Date From#, 'MM/dd/yyyy') or #Date From# i

如何在oracle中传递中间子句中的空值?如何在oracle中传递中间子句中的空值?如何在oracle中传递中间子句中的空值?如何在oracle中传递中间子句中的空值?如何在oracle中传递中间子句中的空值?如何传递中间子句中的空值oracle中BETWEEN子句中的空值?

使用
COALESCE()
。或者,只需使用
中断逻辑即可:

(ap.account_payment_dat >= to_date(#Date From#, 'MM/dd/yyyy') or #Date From# is NULL)  and
(ap.account_payment_dat <= to_date(#Date To#,' MM/dd/yyyy') or #Date To# is NULL
) and
(ap.account_payment_dat>=截止日期(#日期自#,'MM/dd/yyyy')或#日期自#为空)和

(ap.account\u payment\u dat这不受…和…
之间的
语法支持

改用类似的方式:

WHERE ...
AND (:datefrom IS NULL OR ap.account_payment_dat>=:datefrom)
AND (:dateto IS NULL OR ap.account_payment_dat<=:dateto)
其中。。。
和(:datefrom为空或应付账款付款日期>=:datefrom)

和(:dateto为NULL或ap.account\u payment\u dat当我们对OP的原始语句进行有根据的猜测时,我认为括号内的两个表达式应该与
链接,因此当两个参数都
非NULL
@dlatikay时,我们得到一个闭合区间……我同意你的看法。