在一个XML发布报告,我有以下where子句:哪里了日期范围条款给奇怪的结果
where NVL(:P_ORDER_NUMBER, xx.order_number) = xx.order_number
and xx.ordered_date between NVL(TRUNC(fnd_date.canonical_to_date(:P_FROM_DATE)), xx.ORDERED_DATE) and NVL(TRUNC(fnd_date.canonical_to_date(:P_TO_DATE)), xx.ORDERED_DATE)
AND NVL(:P_CUSTOMER, xx.customer_id) = xx.customer_id
,但它的行为很奇怪,与日期范围的结果是正确的,但出来的日期范围的结果为NULL。
我尝试以下太:在并发程序
where NVL(:P_ORDER_NUMBER, xx.order_number) = xx.order_number
and (NVL(TRUNC(fnd_date.canonical_to_date(:P_FROM_DATE)), xx.ORDERED_DATE) > xx.ordered_date
or NVL(TRUNC(fnd_date.canonical_to_date(:P_TO_DATE)), xx.ORDERED_DATE) < xx.ordered_date)
AND NVL(:P_CUSTOMER, xx.customer_id) = xx.customer_id
日期参数有FND_STANDARD_DATE。
和你的问题是什么? – davegreen100
我想如果用户只选择order_number它应该只显示该订单,但如果用户选择日期范围和客户,它必须显示该客户在该日期范围内的订单。 –
您能否显示一些示例数据和预期输出,这将有助于我们理解您要的 – davegreen100