Java EclipseLink(版本2.1.3)中JQPL中的Oracle NVL功能等效物?

Java EclipseLink(版本2.1.3)中JQPL中的Oracle NVL功能等效物?,java,oracle,function,eclipselink,Java,Oracle,Function,Eclipselink,我执行这个JPQL查询 SELECT e FROM Expediente e WHERE e.fechaBaja is null ORDER BY e.idSituacion ASC, e.idExpediente ASC 但是当e.idSituacion为空时,eclipseLink不会返回此注册表 如何使用oracle函数nvl执行此查询?EclipseLink 2.1.3是否支持此功能 SELECT nvl(e.idSituacion,' ')

我执行这个JPQL查询

SELECT e 
  FROM Expediente e 
 WHERE e.fechaBaja is null 
 ORDER BY e.idSituacion ASC, 
          e.idExpediente ASC
但是当
e.idSituacion
为空时,eclipseLink不会返回此注册表

如何使用oracle函数
nvl
执行此查询?EclipseLink 2.1.3是否支持此功能

SELECT  nvl(e.idSituacion,' ')  
  FROM Expediente e 
 WHERE e.fechaBaja is null 
 ORDER BY e.idSituacion ASC, 
          e.idExpediente ASC


谢谢。

合并

我不知道它对您有什么帮助,但您可以使用
COALESCE
函数:

(这类似于
NVL
,但
NVL
是特定于Oracle的,
COALESCE
是ANSI标准。)

订单

使用e.idSituacion ASC命令
时,结果末尾将显示空值

如果您想先使用null值,可以使用
null first
子句:

ORDER BY e.idSituacion ASC首先为空

(仅来自Eclipselink 2.4)

这是一个Eclipselink Bug


我需要原生sql,例如它是一个eclipseLink Bug。我需要原生sql,例如,您链接的帖子似乎有解决方案。你为什么不用它?这有什么问题吗?native
nvl
有什么帮助?
SELECT e 
  FROM Expediente e 
 WHERE e.fechaBaja is null 
   and nvl(e.idSituacion,' ') 
 ORDER BY e.idSituacion ASC, 
       e.idExpediente ASC