Eu preciso de um relatorio que busque todos os produtos e o total de vezes que ele aparece na compra.
Fiz desta forma, mas ele não lista os produtos que nunca apareceram nas compras.
@Entity
@Table(name = "produto")
public class Produto {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String descricao;
}
@Entity
@Table(name = "compra")
public class Compra {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@ManyToOne
private List<Produtos> produtos;
private Comprador comprador;
}
Criteria criteria = getSession().createCriteria(Compra .class, "p");
ProjectionList projectionList = Projections.projectionList();
projectionList.add(Projections.groupProperty("produtos"));
projectionList.add(Projections.rowCount());
criteria.setProjection(projectionList);
List<Object[]> results = criteria.list();