Tenho uma classe chamada Calendario que possui o atributo dataVigencia, gostaria de realizar uma consulta no JPA para pegar todos os anos existente nessa tabela, alguém sabe como devo fazer?
Query que utilizado porém a mesma da erro.
Query qry = em.createQuery("SELECT YEAR(dataVigencia) as ANO FROM Calendario GROUP BY ANO;");
Como você trabalha com datas no java?
Salvo se você utilizar algum componente que permita a seleção direta da data, como um datepicker, você terá de converter a String informada em objeto Date ou Calendar.
Para apresentar ou realizar cálculos, você não consegue fazer diretamente com o objeto de Date, precisa fazer conversões.
Logo, você deve obter o valor do atributo como ele está e, se for uma data, precisa convertê-la para o formato desejado.
consegui
segue a baixo, query utilizada:
Query qry = em.createQuery("SELECT year(c.dataVigencia) FROM Calendario c group by year(c.dataVigencia)");