【发布时间】:2018-12-10 11:56:30
【问题描述】:
有没有办法将此 Oracle Query 转换为 Criteria Query。
SELECT * FROM T_MERCHANT_ORDER_DETAILS where MERCHANT_ID = in_merchantId and ORDER_ID= nvl(in_orderId,ORER_ID) and
TRANSACTION_ID=nvl(in_txnId,TRANSACTION_ID);
in_merchantId 和 in_orderId 是传递给 oracle 过程的变量。 我可以在 Hibernate 中执行此操作吗?
注意::: 如果 orderId 和 txnId 为 null,则返回基于 MercerId 的结果集, 或者如果只有 txnId 为 null,则为 MercerId 和 orderId, 如果没有一个为空,则在所有三个上。
提前致谢。
【问题讨论】:
-
为什么不呢?如果 orderId/tx 为 null 则省略谓词,否则添加它们...这样 nvl 功能将移至 java 代码,但我在您的示例中没有看到问题
标签: java spring oracle hibernate