您的工作解决方案很好(并且与我之前使用的类似)。如果只想绑定一次,则可以使用CTE或内联视图为实际查询提供值:
WITH CTE AS ( SELECt ? AS REAL_VALUE FROM DUAL)SELECt C.* -- but not * really, list all the columnsFROM CTEJOIN CUSTOMERS CON (CTE.REAL_VALUE IS NULL AND C.CUSTOMER_ID IS NULL) OR C.CUSTOMER_ID = CTE.REAL_VALUE
因此,只有一个占位符可以绑定。
不过,我真的没有看到Java分支的问题,除非您的实际查询复杂得多,并且会导致大量重复。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)