java Postgresql中DTO的Sping Boot 存储库本机查询问题

vq8itlhq  于 2023-01-11  发布在  Java
关注(0)|答案(1)|浏览(92)

我在使用Postgresql在Sping Boot 中为dto编写本机查询时遇到了一个问题。
这是下面显示的dto。

@Data
@AllArgsConstructor
@NoArgsConstructor
public class UserCommentsResponse {
    private String placeName;
    private String text;
}

下面是本机查询。

@Query(value="SELECT new com.demo.project.dao.UserCommentsResponse(placeName, text) FROM comment c inner join place p on p.id = c.place_id where customer_id = :id", nativeQuery=true)
List<UserCommentsResponse> getUsersComments(int id);

这是下面显示的错误消息。

org.postgresql.util.PSQLException: ERROR: syntax error at or near "."

我该怎么修呢?

bvjveswy

bvjveswy1#

试试这个

@Query(value="SELECT UserCommentsResponse(placeName, text) FROM comment c inner join place p on p.id = c.place_id where customer_id = :id", nativeQuery=true)

而不是原始查询

相关问题