Bonjour,
Je rencontre des problèmes pour récupérer des listes triés via les requêtes stockés, le ORDER BY ne fonctionne pas... L'annotation @ORDERBY non plus...
Je ne vois pas comment je dois m'y prendre.
Merci d'avance pour votre aide
Bonjour,
Je rencontre des problèmes pour récupérer des listes triés via les requêtes stockés, le ORDER BY ne fonctionne pas... L'annotation @ORDERBY non plus...
Je ne vois pas comment je dois m'y prendre.
Merci d'avance pour votre aide
Salut,
as-tu un code pour qu´on puisse voir ou est ce que cela cale?
Eric
Bonjour,
Tu dois préciser encore plus a quel niveau se situ le problème.
Sinon si tu utilise Jpa tu peux ecrire simplement
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 public List<Employee> findAll() { return em.createQuery("select e from Employee e where ..... order by e.tonChamp desc").getResultList(); }
Oui j'utilise JPA et ma requête est formuler de la même manière que toi mais il ne se passe rien...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 public List<Categorie> toutesLesCategories(long id) { List<Categorie> results = em.createQuery("SELECT c FROM Categorie c WHERE c.media.id = :id ORDER BY c.media.media ASC") .setParameter("id", id) .getResultList(); return results; }
Tu veux dire quoi par il ne se passe rien... !! que même si tu enlève order by ou que tu met "Order by desc" rien ne change dans ton outPut ??
sinon je te propose de modifier ton order by de c.media.media à c.autreAttribut de ta classe Categorie car je ne suis pas très sur de ce que c.media.media va donner.
Si ça fonctionne alors ton problème vient de la.
Oui, aucun changement avec le order by ou sans ^^
c.attribut fonctionne mais je suis étonné de ne pouvoir y arriver que de cette manière...
Parce que dans le cas d'un @ManyToMany unidirectionnel :
Categorie * CategorieTheme
Ma requêtte pour sortir les CategorieTheme d'une Categorie ressemble à ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 public class Categorie { @ManyToMany private List<CategorieTheme> categoriesThemes; }
Résultat :
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT DISTINCT c.categoriesThemes FROM Categorie c INNER JOIN c.categoriesThemes t WHERE c.id = :id ORDER BY t.position ASC
Comment puis je avoir les résultats trié dans ce cas ci ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 [{"id":2,"categorieTheme":"Lieux","position":3},{"id":3,"categorieTheme":"Périodes","position":4},{"id":4,"categorieTheme":"Civilisations","position":5},{"id":5,"categorieTheme":"Genres","position":1},{"id":1,"categorieTheme":"Themes","position":2}]
mettez
org.hibernate.SQL en DEBUG
dans votre config de log pour voir le query natif qui est généré
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager