[英]I got a syntax error when trying to call JPA function
當我試圖調用JPA函數時,此語句出現錯誤:“:”或附近的語法錯誤。
public interface BcaTestRepository extends CrudRepository<InBodyBCA, Long> {
@Query(value = "SELECT * FROM in_body_bca bca WHERE person_id = :personId " +
"AND to_timestamp(bca.datetimes::text, 'YYYYMMDDHH24MISS') BETWEEN :startRange AND :endRange",
nativeQuery = true)
List<InBodyBCA> findAllByPersonId(@Param("personId") Long personId,
@Param("startRange") LocalDateTime startRange,
@Param("endRange") LocalDateTime endRange);
但是在PgAdmin中查詢正常
SELECT id, to_timestamp(datetimes::text, 'YYYYMMDDHH24MISS') as dt FROM in_body_bca WHERE to_date(datetimes::text, 'YYYYMMDDHH24MISS')
BETWEEN '2018-05-07' AND '2019-05-07' ORDER BY to_date(datetimes::text, 'YYYYMMDDHH24MISS') DESC ;
您可以在此處使用雙冒號: bca.datetimes::text
。 JPA將查找text
變量名稱。
您需要對其進行轉義:
bca.datetimes\\:\\:text
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.