OpenJPA是否支持Where In Select查询?

时间:2014-06-20 19:04:58

标签: sql db2 openjpa

所以我有一个如下查询,我试图使用OpenJPA在DB2上运行:

 @NamedQuery(name="getStuff", 
            query = "SELECT mtl.final, mtl.entity " +
            "FROM MCT mct, MTL mtl " +
            "WHERE ~~~~~~~~~~~~~~~ " +
            "AND ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ " +
            "AND ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ " +
            "AND ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ " +
            "AND ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ " +
            "AND ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" +
            "AND ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ " +
            "AND ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ " +
            "AND ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ " +
            "AND mct.cTotPK.Label IN ( SELECT mccp.cCPPK.cPLC " +
            "FROM MCCP mccp WHERE mccp.cCPPK.cLC = '#My String#')")

我可以摆脱WHERE IN SELECT语句(底部两行)并且它将运行。所以我无法弄清楚底线两行有什么问题。

每当我运行它时,我会收到DB2错误:
DB2 SQL错误:SQLCODE = -199,SQLSTATE = 42601,SQLERRMC = FOR;或者具有组间交叉顺序)除了MINUS UNION之外,驱动程序= 3.61.75

当我看到这个错误时,我发现它是“非法使用关键字”但我真的不知道我还能做什么。我可以尝试一下WHERE IN SELECT的替代方案吗?谢谢你的帮助。

0 个答案:

没有答案