JPA JPQL联接列查询

JPA JPQL联接列查询,jpa,Jpa,我有一个带有连接选项的JPQL查询,我正在使用amcharts作为应用程序的统计部分。我能够获取查询的resultlist,但我无法计算此resultlist的列名以实现amcharts public List<Object[]> StatsByCategorie() { Query query = em.createQuery("SELECT d.libelleCategorie AS libelle, COUNT(t) AS stat FRO

我有一个带有连接选项的JPQL查询,我正在使用amcharts作为应用程序的统计部分。我能够获取查询的resultlist,但我无法计算此resultlist的列名以实现amcharts

    public List<Object[]> StatsByCategorie() {
    Query query = em.createQuery("SELECT d.libelleCategorie AS libelle,            COUNT(t) AS stat FROM Categorie d JOIN d.listActualite t GROUP BY     d.libelleCategorie");

    @SuppressWarnings("unchecked")
    List<Object[]> results = query.getResultList();

        for (int i = 0; i < results.size(); i++) {
            Object[] arr = results.get(i);
            for (int j = 0; j < arr.length; j++) {
                System.out.print(arr[j] + " ");
            }
            System.out.println();



        }
        return results;
}
公共列表statsbytegorie(){
Query Query=em.createQuery(“选择d.libelleCatarie作为libelle,从分类d中计数(t)作为stat加入d.listImplementate t GROUP BY d.libelleCatarie”);
@抑制警告(“未选中”)
List results=query.getResultList();
对于(int i=0;i

我想知道这个查询的列名。

结果列表中没有列名,只有一个对象数组

public List<Object[]> StatsByCategorie() {
Query query = em.createQuery("SELECT d.libelleCategorie AS libelle,            COUNT(t) AS stat FROM Categorie d JOIN d.listActualite t GROUP BY     d.libelleCategorie");

@SuppressWarnings("unchecked")
List<Object[]> results = query.getResultList();

    for (int i = 0; i < results.size(); i++) {
        Object[] arr = results.get(i);
        for (int j = 0; j < arr.length; j++) {
            //when j = 0, arr[j] prints 'libelle' value
            //when j = 1, arr[j] prints 'stat' value
            System.out.print(arr[j] + " ");
        }
        System.out.println();



    }
    return results;
}
公共列表statsbytegorie(){
Query Query=em.createQuery(“选择d.libelleCatarie作为libelle,从分类d中计数(t)作为stat加入d.listImplementate t GROUP BY d.libelleCatarie”);
@抑制警告(“未选中”)
List results=query.getResultList();
对于(int i=0;i
要在结果中使用列名,必须创建一个元组查询

public List<Tuple> StatsByCategorie() {
Query<Tuple> query = em.createQuery("SELECT d.libelleCategorie AS libelle, COUNT(t) AS stat FROM Categorie d JOIN d.listActualite t GROUP BY     d.libelleCategorie", Tuple.class);

@SuppressWarnings("unchecked")
List<Tuple> results = query.getResultList();

    for (int i = 0; i < results.size(); i++) {
        Tuple arr = results.get(i);
        System.out.print(arr[i].get('libelle') + " ");
        System.out.print(arr[i].get('stat') + " ");
        System.out.println();



    }
    return results;
}
公共列表statsbytegorie(){
Query Query=em.createQuery(“选择d.libelleCegorie作为libelle,将(t)作为stat从Categorie d JOIN d.listExecute t GROUP BY d.libelleCegorie”,Tuple.class);
@抑制警告(“未选中”)
List results=query.getResultList();
对于(int i=0;i