我正在使用 JPA 查詢資料庫,但發生了一些奇怪的事情。在某些情況下,演員表可以正常作業并且編譯得很好,但是使用 BigDecimal 時,它不允許我使用演員表來制作帶有字串的 LIKE。這是有效的代碼的一部分:
"AND cast(pe.pesoObjetivo as string) LIKE :pesoObjetivo% "
pesoObjetivo 是一種資料型別 Double
@Column(name = "peso_objetivo")
private Double pesoObjetivo;
但是當我嘗試執行查詢時
"AND cast(pe.pesoPregestacional) LIKE :pesoPregestacional% "
pesoPregestacional 是一個 BigDecimal
@Column(name = "peso_pregestacional", precision = 21, scale = 2)
private BigDecimal pesoPregestacional;
我收到以下錯誤
Caused by: org.hibernate.hql.internal.ast.QuerySyntaxException: unexpected token: ) near line 1, column 701
我的查詢的其余部分如何在 JPA 中使用字串對 BigDecimal 資料執行 LIKE 操作?或者我的錯誤是什么?通過注釋掉這行代碼或使用
"AND pe.pesoPregestacional = :pesoPregestacional% "
一切正常,這不是我想要的。所以很明顯錯誤在這句話中
uj5u.com熱心網友回復:
你錯過了字串:
錯誤的
"AND cast(pe.pesoPregestacional) LIKE :pesoPregestacional% "
正確的
"AND cast(pe.pesoPregestacional as string) LIKE :pesoPregestacional% "
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/390069.html
