En SQLLangage permettant de communiquer avec une base de données., lorsqu’une requête possède une condition sur une colonne sur laquelle porte une clause GROUP BY, cette condition n’est pas exprimée dans la clause WHERE mais dans la clause HAVING.
En SQLLangage permettant de communiquer avec une base de données., lorsqu’une requête possède une condition sur une colonne sur laquelle porte une clause GROUP BY, cette condition n’est pas exprimée dans la clause WHERE mais dans la clause HAVING.
Si vous savez faire une requête simple avec Hibernate 4, écrire une condition simple et utiliser la clause GROUP BY, la mise en place d’un HAVING ne vous posera pas de problème. Il faut utiliser la méthode having() de votre CriteriaQuery, de la même manière que vous utiliseriez la méthode where() : en lui passant un Predicate en paramètre.
Exemple l’utilisation du multiselect) :
CriteriaBuilder builder = entityManager.getCriteriaBuilder();
CriteriaQuery<Tuple> criteriaQuery = builder.createQuery(Tuple.class);
Root<Commande> root = criteriaQuery.from(Commande.class);
criteriaQuery.multiselect(root.get(Commande_.date), root.get(Commande_.departement), builder.count(root));
List<Expression<?>> groupList = new ArrayList();
groupList.add(root.get(Commande_.date));
groupList.add(root.get(Commande_.departement));
criteriaQuery.groupBy(groupList);
Predicate predicate = builder.notEqual(root.get(Commande_.departement), "75");
criteriaQuery.having(predicate);
TypedQuery<Tuple> typedQuery = entityManager.createQuery(criteriaQuery);
List<Tuple> result = typedQuery.getResultList();
Chez AXOPEN, nous sommes convaincus que le cadrage de projet informatique est une des étapes les plus structurantes… et pourtant encore trop sous-estimée dans les projets IT. En effet, dans les projets informatiques, les dérives ne sont pas toujours dues à un bug ou à un mauvais choix technique. Bien souvent, le problème vient de plus loin : le projet était mal cadré dès le départ. Et pourtant, cette phase initiale est essentielle pour réussir un projet IT ! Dans cet article, on vous embarque dans la compréhension des fondamentaux du cadrage de projet informatique, et on vous donne aussi quelques tips de cadrage !
AWS SAM : "Simplify Serverless", telle est la devise qu'Amazon nous propose pour son Framework d'Infrastructure as Code (IaC) dédié au Serverless ! La promesse est-elle tenue ? Est-ce un concurrent ou un allié des outils déjà existants comme Terraform ? C'est ce que nous allons tenter de découvrir dans cet article !
Aujourd'hui on traite un sujet un peu moins technique que d'habitude, mais au combien important dans la vie des projets IT : la gestion des connaissances et de la documentation au sein des projets informatiques.