DUVIDA - Select count JPQL[RESOLVIDO]

fala galera, blz?
entao, minha duvida é a seguinte… eu tenho essa consulta akie :smiley:
por exemplo

SELECT count(v.dataTroca) from Voucher v where v.campanha_id = 3 and v.dataTroca between '2011-04-14' and '2011-04-15'

passando ela pra JPQL

 EntityManager em = new JPAUtil().getEntityManager();
        String sql = "SELECT count(v.dataTroca) from Voucher v where  v.campanha_id = :pCampanha and v.dataTroca between :pinicio and :pfim";
        TypedQuery<Long> query = em.createQuery(sql, Long.class);
        query.setParameter("pCampanha", campanha);
        query.setParameter("pfim", new Date());
        Calendar dataInicio = new GregorianCalendar();
        dataInicio.setTime(new Date());
        if (periodicidade.equals(periodicidade.DIARIA)) {
            dataInicio.roll(Calendar.DATE, -1);
        } else if (periodicidade.equals(Periodecidade.SEMANALMENTE)) {
            dataInicio.roll(Calendar.DATE, -7);
        } else {
            dataInicio.setTime(campanha.getInicioTroca().getTime());
        }

        query.setParameter("pinicio", dataInicio.getTime());
        System.out.println(sql);
        Long i = query.getSingleResult();
        return query.getSingleResult();

o problema ta justamente quando executo no banco
que retorna > 0
e na jpql sempre retorna 0

ideias?