1
以下JPQL查詢,而不問題上運行:JPQL: 「where」 子句中的 「案例」 變量
SELECT t, CASE WHEN (e.language.language = 'en' AND e.language.country = 'GB' AND e.language.variant = '') THEN e.text ELSE '' END sortProperty FROM Glossary g JOIN g.terms t JOIN t.expressions e ORDER BY sortProperty
,而下面的失敗:
SELECT t, CASE WHEN (e.language.language = 'en' AND e.language.country = 'GB' AND e.language.variant = '') THEN e.text ELSE '' END sortProperty FROM Glossary g JOIN g.terms t JOIN t.expressions e WHERE sortProperty = 'asdf' ORDER BY sortProperty
與此異常:
Caused by: java.lang.IllegalArgumentException: Invalid unbound variable "sortproperty" in query.
這是查詢語法的一個限制,可以以某種方式繞過(可能使用Criteria API)?
感謝和問候, 帕斯卡
你確定你沒有忘記使用setParameter(「sortproperty」,sortproperty)?? –
@sabujhassan Thx爲您的迴應。 sortProperty雖然不是一個參數,但是是一個結果變量。 –