Se alguém estiver tendo dificuldade no retorno da consulta na aula e aparece algo como
"ERROR: Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column 'loja.itens1_.quantidade' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
Exception in thread "main" javax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException: could not extract ResultSet"
Isso ocorre porque na base de dados Mysql por default esta configurado assim sql_mode=only_full_group_by, você pode desativar que não acho que seja uma boa mas pode fazer isso no codigo que tambem resolve
public List<Object[]> relatorioDeVendas(){
String jpql = "SELECT produto.nome, SUM(item.quantidade),MAX(pedido.data) FROM Pedido pedido " +
"JOIN pedido.itens item " +
"JOIN item.produto produto " +
"GROUP BY produto.nome " +
"ORDER BY SUM(item.quantidade) DESC";
return connEm.createQuery(jpql, Object[].class).getResultList();