首页 > 解决方案 > 如何使用不受支持的功能重写此 H2 查询

问题描述

我有一个 JPA 实体

public class GenericRecord {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    private LocalDate localDate;

    private String category;

    private Double amount;
}

目前我有一些代码生成Map<String, Map<String, Double>>如下所示: 在此处输入图像描述

我想使用 H2 数据库上的查询生成这张地图(数据已经在数据库中)。但是,似乎我正在使用不受支持的功能(它是“+”运算符吗?):

在此处输入图像描述

如何重写查询,使其在 H2 上运行(但可能具有广泛的兼容性)?

编辑 1

这是工作查询:

SELECT CATEGORY, CAST( MONTH(LOCAL_DATE) AS VARCHAR(2)) || '-' || CAST(YEAR(LOCAL_DATE) AS VARCHAR(4)) AS mi, SUM(AMOUNT)
FROM GENERIC_RECORD 
GROUP BY CATEGORY, CAST( MONTH(LOCAL_DATE) AS VARCHAR(2)) || '-' || CAST(YEAR(LOCAL_DATE) AS VARCHAR(4)) 

标签: javasqljpah2

解决方案


H2 SQL 数据库中,字符串连接运算符||, not +


推荐阅读