gpt4 book ai didi

java - JPA Hibernate Postgres 精度不起作用

转载 作者:行者123 更新时间:2023-12-02 06:53:38 25 4
gpt4 key购买 nike

我正在尝试在 Postgres 数据库下面运行查询。

  select new map(avg(cast (speed as double precision)) as avg)
from table

speed 列的类型为 varchar

我正在使用 JPA 执行,如下所示

        em = entityManagerFactory.createEntityManager();        
Query hqlQuery = em.createQuery(query);
reportList = hqlQuery.getResultList();

当我运行这个时,我收到以下错误

    Caused by: org.hibernate.hql.internal.ast.QuerySyntaxException: expecting CLOSE, 
found 'precision' near line 1

有人遇到过这种情况吗?我可以在 Hibernate 中不使用精度吗?

最佳答案

如果您尝试通过 JPA 在 Hibernate 中执行 native SQL,you need to use em.createNativeQuery .

em.createQuery 需要 JPQL(一种从 HQL 派生的查询语言)中的参数,以便 Hibernate 的 JPQL 实现使用 org.hibernate.hql 类。

不过,这看起来也不像有效的 SQL。 新 map (...)?您不能混合使用 JPQL/HQL,而且我还没有在 SQL 方言中见过 new

关于java - JPA Hibernate Postgres 精度不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17694765/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com