2016-07-27 56 views
2
SELECT m FROM Clientmessage m 
WHERE (((m.userid = 4) OR (m.recipientid = 4)) 
AND (m.isdeleted = false) 
AND ((m.currentstate IS NULL) 
OR (m.currentstate IN (NULL, 'CREATED', 'DELIVERED')))) 
order by m.timereceived 

第1行第48列:语法错误在[=]。内部例外: MismatchedTokenException(80!= 82)此JPQL查询字符串有什么问题

任何想法错误可能是什么?我没有想法。

所以stackoverflow希望我解释为什么我的问题不同于可能的重复。成为hoenst我厌倦了这个网站。这不是,如果每次有人认为我必须解释某件事情时我必须解释这一点,我会在其他地方寻求帮助。吉兹。

+2

你想象的人前6行是1.这就是我最初如何张贴他们。然后他们被编辑。 – noneconnex

+2

向我们展示实体的代码 –

+1

尝试从您的IN(NULL,...)中删除NULL,因为您已经测试过它 – farrellmr

回答

2

我会后回答这样的问题,可以关闭 - 这个问题是在空 -

m.currentstate IN (NULL, 'CREATED', 'DELIVERED') 

您可以使用类似于NVAL聚结功能

耻辱你的问题得到了修改,然后不得不解释为什么重复是错误的