Hibernate SELECT DISTINCT comportement

J'espère que cette question n'est pas de dupliquer, parce que dans un autre cas, j'utilise google mal (honte sur moi) 🙂

Donc, je ne trouve pas exacte et claire réponse pour ma question: Est-ce "SELECT DISTINCT ..." dans les requêtes hql appliquée avant setFirstResult() et setMaxResults()? Je veux être calme que je ne vais pas avoir des problèmes avec la pagination dans mon application.

  • DISTINCT est SQL / base de données de construction. Vous n'aurez pas de problèmes avec la pagination. Mais comme ma collègue l'a dit - si vous utilisez DISTINCTES, vous le faites mal ;). Il peut devenir lent sur les grandes tables et le même résultat peut être obtenu généralement dans une manière différente.
  • J'ai essayé de le faire par un autre moyen... j'ai pour valeur elementcollection et CollectionTable annotations sur le terrain (par défaut paresseux fetch) et quand j'exécute ma requête avec la clause sur cette collection que j'ai des doublons dans le jeu de résultats..
  • Vous allez avoir des doublons uniquement si vous utilisez le REJOINDRE. Vous n'obtiendrez pas de doublons avec les sous-sélection.