Наиболее частое значение в SQL столбце Jpa - PullRequest
0 голосов
/ 08 мая 2020

У меня есть этот метод, я хочу найти наиболее частое значение в заданном столбце в таблице SQL, код Sql работает нормально, когда я пробую его на MS SQL, но когда я пытаюсь вернуть значения, которые он мне дает Исключение в потоке «main» java .lang.ClassCastException: [L java .lang.Object; не может быть преобразован в BLL. Perdoruesi

   public  Perdoruesi repeatedUsername() throws PerdoruesiException{
        String sql ="   select p.Username ,count(*) as nor from Perdoruesi p\n" +
"        group by Username\n" +
"          having count(*) =(select max(nor) from \n" +
"            (select Username,count(*) as nor from Perdoruesi group by Username) Perdoruesi)";
        Query query = em.createNativeQuery(sql);
        try{
            return (Perdoruesi)query.getSingleResult();
        }catch(NoResultException e){
            throw new PerdoruesiException("..");
        }
    }

1 Ответ

0 голосов
/ 08 мая 2020

Решено

 public  String []repeatedUsername() throws PerdoruesiException{
        String sql ="   select p.Username ,count(*) as nor from Perdoruesi p\n" +
"        group by Username\n" +
"          having count(*) =(select max(nor) from \n" +
"            (select Username,count(*) as nor from Perdoruesi group by Username) Perdoruesi)";
        String p = null;
        int numri = 0;
        Query query = em.createNativeQuery(sql);
        List<Object[]> list = query.getResultList();

        for(Object [] obj : list){
                 p = (String)obj[0];
                 numri = (int) obj[1];
        }

                return new String[]{p,String.valueOf(numri)};
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...